Winapi 在VISTAx64下创建x86进程

Winapi 在VISTAx64下创建x86进程,winapi,x86,64-bit,createprocess,Winapi,X86,64 Bit,Createprocess,我在WindowsServer2003x64下创建了一个x86进程,好的,它工作正常 但我尝试在VISTA x64下创建一个x86进程。 失败,错误代码=216。错误\u EXE\u机器\u类型\u不匹配 2003x64和VISTAx64之间有什么不同吗?我在客户机上调试 您使用的产品中有16位设置或16位程序或某些16位代码 当您在x64计算机中从CreateProcess或CreateProcessEx运行16位EXE时,会发生这种情况 建议是 要联系软件供应商,请告诉他们将Innosetu

我在WindowsServer2003x64下创建了一个x86进程,好的,它工作正常

但我尝试在VISTA x64下创建一个x86进程。 失败,错误代码=216。错误\u EXE\u机器\u类型\u不匹配


2003x64和VISTAx64之间有什么不同吗?

我在客户机上调试

您使用的产品中有16位设置或16位程序或某些16位代码

当您在x64计算机中从CreateProcess或CreateProcessEx运行16位EXE时,会发生这种情况

建议是

要联系软件供应商,请告诉他们将Innosetup升级到最新版本,如16位Innosetup或InstallShield,升级到最新版本,如16位InstallShield,并向您提供新的安装程序包

如果产品包含DOS或MS-DOS遗留EXE或COM文件,则需要向供应商询问基于Win32或Win64命令行的版本

在虚拟机内运行Windows Vista 32位、Windows 7 32位的副本。这些16位实用程序将正常工作


请发布创建进程的代码,或者至少足以重现错误。关于32位程序的运行,这些操作系统之间没有什么区别。您尝试运行的32位可执行文件在两个不同的系统上是否相同。