- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all.
I've got a Visual Studio solution containing 2 projects: one C# front end and one Fortran DLL for computations.
It compiles and runs fine on our machine with Visual Studio 2005.
On a machine with VS 2008, however, compilation is fine but when I attempt to run I get the following error:
An unhandled exception of type 'System.DllNotFoundException' occurred in PPP1.exe
Additional information: Unable to load DLL 'PPP_DLL.dll': Invalid access to memory location. (Exception from HRESULT: 0x800703E6)
I have done some web searching and found that with the VS2005 to VS2008 transition, Data Execution Prevention is enabled by default -- the C# compiler being a particular offender in this regard -- and that some older DLLs cannot be run without changing the /NXCOMPAT flag, producing errors like the one above. I have tried the standard method of doing this (to wit, "editbin /NXCOMPAT:NO ") and gotten no errors from the editbin call but no success in fixing this problem.
Anybody know how to fix this? Anybody know if I'm on the wrong track? Anybody even vaguely familiar with this problem?
thanks
- andrew
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Much more likely cause is that you don't have Intel run-time libraries installed on the target machine. You can verify that by examining the .dll with Dependency Walker. Alternatively, you can statically bind the run-time library -- change the setting at Project properties/Fortran/Libraries/Runtime library.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, but this does not seem to solve my problem.
I have tried all settings of the run-time library in the drop-down box at
Project properties/Fortran/Libraries/Runtime library
without any success.
I've also installed the run-time libraries from the link you gave. This did not help either. I did notice that these libraries seemed intended for end users. I am compiling (in both Debug and Release) using Visual Studio and a full installed integrated Intel Fortran compiler. Not sure I needed the run-time library on top of that.
Can you explain why the lack of run-time libraries might produce the "Invalid access to memory location" error?
- andrew

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page