- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
According to the VS C++ Help "Interprocess Communication" "The CreateProcess and ShellExecute functions can launch 32-bit and 64-bit processes from either 32-bit or 64-bit processes"
I don't need interprocess communication per se, but I do need to run external 32-bit exes from a 64-bitexe. The 64-bit exe is a mixed language project. In the Fortran codewe use the SYSTEM function and in C/C++ code we use CreateProcess - neither of which work.
For both mechanisms I get a box informing me that the 32-bit exe "has stopped working. A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available"
I have just tried opening a Build Environment command window for Intel 64 version 10.1 and then running the 32-bit exe. Thisgives me a box saying "This application has failed to start because libifcoremd.dll was not found"
Now obviously the command window is set up to point to the 64-bit environment anda 64-bit version ofany dll can't be loaded froma 32-bit exe. So presumably something similar is happening when running the 32-bit exes from the 64-bit exe (64-bit environment is being inherited by the 32-bit exe ?)
Has anyone come across this problem beforeand does anyone have a solution ?
Thanks
Les
I don't need interprocess communication per se, but I do need to run external 32-bit exes from a 64-bitexe. The 64-bit exe is a mixed language project. In the Fortran codewe use the SYSTEM function and in C/C++ code we use CreateProcess - neither of which work.
For both mechanisms I get a box informing me that the 32-bit exe "has stopped working. A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available"
I have just tried opening a Build Environment command window for Intel 64 version 10.1 and then running the 32-bit exe. Thisgives me a box saying "This application has failed to start because libifcoremd.dll was not found"
Now obviously the command window is set up to point to the 64-bit environment anda 64-bit version ofany dll can't be loaded froma 32-bit exe. So presumably something similar is happening when running the 32-bit exes from the 64-bit exe (64-bit environment is being inherited by the 32-bit exe ?)
Has anyone come across this problem beforeand does anyone have a solution ?
Thanks
Les
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You would need to add the 32-bit library PATH, at least in the environment you set up in the SYSTEM function call, in order to use dynamic linked compiler run-time libraries for the 32-bit .exe.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - tim18
You would need to add the 32-bit library PATH, at least in the environment you set up in the SYSTEM function call, in order to use dynamic linked compiler run-time libraries for the 32-bit .exe.
I was afraid of that (but half expected it would be the case)
:-(
Les

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