I have a Win32 C++ application I have compiled on a PC running Windows 7 in Microsoft Visual Studio C++ express 2010. The application is compiled in release mode with the \MT runtime flag(Multi Threaded).
My Problem: When I try to run my .exe on a laptop running Windows Vista, the application crashes and never opens the main window. The .exe I am using is the output from the visual studio project’s ‘release’ folder.
I have checked the majority of win32 functions in the application and they all work on windows 2000 and up. I also moved the Visual Studio project onto the Windows Vista laptop and compiled it, it ran fine and worked.
Why does the .exe crash? Does this mean the only way I can get my .exe to work on different versions of Windows OS is to use an installer? The .exe is only 175kb in size, so the installer will probably be larger than the output .exe lol?
It sounds like you need the VS2010 runtime re-distributable package. Note the link is for VS2010 SP1, you may need VS2010 without SP1 if you haven’t compiled with SP1.