Exe does not work on older versions of Windows when it should

I have a Win32 C ++ application that I compiled on a Windows 7 PC in Microsoft Visual Studio C ++ express 2010. The application is compiled in release mode with the MT (Multi Threaded) runtime flag.

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 "release" folder in visual studio.

I have tested most of the win32 functions in the application and they all work on Windows 2000 and above. I also transferred the Visual Studio project to a Windows Vista laptop and compiled it, it worked fine and it worked.

Why is the .exe crashing? Does this mean that the only way to get my .exe to work on different versions of Windows is to use the installer? The .exe is only 175KB in size, so the installer will probably be larger than the output .exe lol?

+3


source to share


1 answer


Sounds like you need the VS2010 re-distribution package . Note that the link is for VS2010 SP1, you might need VS2010 without SP1 if you haven't compiled with SP1.



+1


source







All Articles