好的,所以我在 Windows 7 x64 中使用 Visual Studio 2012 进行编程和编译。我的应用程序在那里运行良好,但是当我尝试从 Windows XP SP3 虚拟机执行它时,我立即得到“xxxx.exe 不是有效的 win32 应用程序”。
正在使用静态链接编译应用程序,即使用/MT
. 我在 targetver.exe 中将 _WIN32_WINNT 设置为 0x0501;配置管理器设置为 Win32,链接器高级选项中的目标机器设置为 MACHINEX86。
我的 targetver.h 看起来像这样:
#include <winsdkver.h>
#define _WIN32_WINNT 0x0501
#define WINVER 0x0501
#define NTDDI_VERSION 0x0501
#include <SDKDDKVer.h>
我还尝试使用/MD
.NET Framework 进行编译和安装,但这也无济于事。
我一无所知,我真的可以使用一些帮助,因为我需要让它在 Windows XP 上工作。