Exe file compatibility
-
Hello, I wonder if there are compatibility issues with "exe" created by my project and Windows. I use Visual Studio 2008 for MFC projects. When I compile I create a project file that run on my PC (Windows XP) Can the "exe" file be executed in every Windows (XP, Vista, 7,8) without problems or do I have put some particular settings during compilation in order to get a universal exe that works in every machine?
-
Hello, I wonder if there are compatibility issues with "exe" created by my project and Windows. I use Visual Studio 2008 for MFC projects. When I compile I create a project file that run on my PC (Windows XP) Can the "exe" file be executed in every Windows (XP, Vista, 7,8) without problems or do I have put some particular settings during compilation in order to get a universal exe that works in every machine?
-
Hello, I wonder if there are compatibility issues with "exe" created by my project and Windows. I use Visual Studio 2008 for MFC projects. When I compile I create a project file that run on my PC (Windows XP) Can the "exe" file be executed in every Windows (XP, Vista, 7,8) without problems or do I have put some particular settings during compilation in order to get a universal exe that works in every machine?
lor75 wrote:
Can the "exe" file be executed in every Windows (XP, Vista, 7,8) without problems or do I have put some particular settings during compilation in order to get a universal exe that works in every machine?
Read up on Visual C++ Redistributable for Visual Studio.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
-
Hello, I wonder if there are compatibility issues with "exe" created by my project and Windows. I use Visual Studio 2008 for MFC projects. When I compile I create a project file that run on my PC (Windows XP) Can the "exe" file be executed in every Windows (XP, Vista, 7,8) without problems or do I have put some particular settings during compilation in order to get a universal exe that works in every machine?
They already gave you some good links. Anyway if your problem is to understand if the exe structure itself is compatible between last 5 Os's the answer is yes. The executable format (PECOFF) is the same as the resources format. More different is the situation from system calls point of view. If an exe using very 'basic' functions can happily run from NT4.0 to WIN10, the things changes as you use new functions from OS or libraries (ie MFC) that were not present in former releases. So if you want to know if your exec from VC2008 under XP will run on Win7 and Win8 it will do it on 99% of cases. Instead if you want to build an exe that can run on all OS's from NT on carefully choose the functions you use in your code (or prefer API programming). P.S. The graphical aspect can be changed between the OS's using an external manifest file with the compatibility fields correctly compiled allowing each OS to use last version of GUI DLL's.
-
Hello, I wonder if there are compatibility issues with "exe" created by my project and Windows. I use Visual Studio 2008 for MFC projects. When I compile I create a project file that run on my PC (Windows XP) Can the "exe" file be executed in every Windows (XP, Vista, 7,8) without problems or do I have put some particular settings during compilation in order to get a universal exe that works in every machine?
It should work... however, the libraries used have to be present on that system (unless you explicitly used static linking, which is not the default). MS does package the "redistributables" nicely into an installer for you though. Just make sure that gets installed first or include it along with an installer for your own program and you'll be set. MS VS2008 x86 Redistributable [^] (there is also a 64bit version, if you don't know which one you're using, it's likely x86 since that's the default build type in 2008 if I remember correctly)