I am trying to create a 64 bit application that will run on Windows Server (I am testing with Windows Server 2008 R2 64 bit). My development environment is Visual C++ 2010 on Windows 7 64 bit. Right now I am experimenting with a very simple "hello world" console application. In the properties of my test app, the platform is "Active (x64)". This compiles and links fine, and on my Win7 development machine, works fine. When the program is running, I can go to Task Manager and see that it is a 64 bit application.
However when I run that executable on Windows 2008, I immediately get "the application was unable to start correctly (0xc000007b)". I saw some advice to run Dependency Checker. The result of this is "Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module. Error: Modules with different CPU types were found.". All of the dependent modules (e.g. kernel32.dll, msvcr100.dll) have the CPU type set to x86. Only my main exe has the CPU set to x64. Is that the problem? Why does this run on my Win7 system but not Server 2008, and what can I do to correct the problem?
User contributions licensed under CC BY-SA 3.0