FileNotFoundException was unhandled, file 'crdb_adoplus.dll' or one of its dependencies was not found

I am using Visual Studio 2013 Professional on a computer running Windows 8.1 . I downloaded the SAP Crystal Reports, developer version for Visual Studio 'Install Executable' CRforVS_13_0_13.exe and installed it. I ran my Visual Basic 2013 application in Visual Studio 2013, tried to produce a Crystal Report and got the following error;

'FileNotFoundException was unhandled
An unhandled exception of type 'System.IO.FileNotFoundException' occurred in mscorlib.dll
Additional information: Could not load file or assembly 'file:///C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll' or one of its dependencies. The system cannot find the file specified.'

In Windows Explorer I found that the file 'crdb_adoplus.dll' had been installed in directorys 'c:\ProgramFiles (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinesnsObjects Enterprise XI 4.0\win32_x86\'
and
in directory'c:\ProgramFiles (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinesnsObjects Enterprise XI 4.0\win64_64\'

Why would my Visual Basic 2013 application be looking for the file 'crdb_adoplus.dll'  in 'c:\program files (x86)\...\win32_x86\dotnet1\' when the file was installed in directory  'c:\program files (x86)\...\win32_x86\' by the SAP Crystal Reports, developer version for Visual Studio 'Install Executable' CRforVS_13_0_13.exe?

Please help
lschwabeAsked:
Who is Participating?
 
mlmccCommented:
Something in the application has the dll referenced in that place.  Check your references and update that one to the correct location.

mlmcc
0
 
lschwabeAuthor Commented:
Thanks for your input. It put me in the right direction but the problem still exists. I have some further test observations.

For clearity let 'c:\...'  refer to 'C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0'

I opened my project in VS 2013, selected the project properties/References/Reference Paths. There was a reference to '...\win32_x86\dotnet\' but none to the path shown in the runtime error message (''...\win32_x86\dotnet1\'). I created a test project, added a new blank Windows form and a new blank Crystal report. I checked the test projects reference paths and a reference was created to '...\win32_x86\dotnet\'. The file that could not be found at runtime was ''...\win32_x86\dotnet1\crdb_adoplus.dll'. The file was installed on my computer by the SAP Crystal Reports, developer version for Visual Studio 'Install Executable' CRforVS_13_0_13.exe as '...\win32_x86\'

Please help
0
Cloud Class® Course: Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

 
lschwabeAuthor Commented:
I forgot to mention that I did update the reference to 'c:\ProgramFiles (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinesnsObjects Enterprise XI 4.0\win64_64\' but I still got the same error message

'Could not load file or assembly 'file:///C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll' or one of its dependencies. The system cannot find the file specified.'
0
 
mlmccCommented:
Unfortunately I am not a .Net programmer but a report developer.  SO I don't know what is needed.

I'll add the .Net topic to see if anyone can help with that.

mlmcc
0
 
lschwabeAuthor Commented:
Thanks
0
 
mlmccCommented:
To make this thread self-supporting and in case the SAP link goes dead (which happens all the time with them) here is the gist of the solution linked to above.

The is from the link to http://scn.sap.com/thread/1802638
Create a "dotnet1" directory.
Copy the missing file to the "dotnet1".

Add "useLegacyV2RuntimeActivationPolicy" to the project "app.config" file as below.
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
  </startup>

mlmcc
0
 
lschwabeAuthor Commented:
It works,! Thanks to both of you, CodeCruiser and mlmcc.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.