windows - 在Win7和WinXP专业 SP3"not a valid Win32 application (193)" 上有效执行

  显示原文与译文双语对照的内容
0 0

我在 7 SP1上编译了一个可执行文件,带有静态链接和平台工具集"Visual Studio 2013 - Windows XP ( v120_xp )的bit 32位"

它在 Win7 ( 。请参见依赖项Walker分析的附加屏幕截图) 上运行完美。

enter image description here

它无法在操作系统上运行:

enter image description here

以下是配置文件日志:


Starting profile on 12/9/2014 at 2:55:03 AM

Operating System: Microsoft Windows XP Professional (32-bit), version 5.01.2600 Service Pack 3
Program Executable: c:tempOCTOPUS.EXE
Program Arguments: 
Starting Directory: C:Temp
Search Path: C:Program FilesActiveState Komodo Edit 8;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:Program FilesMATLABR2009bruntimewin32;C:Program FilesMATLABR2009bbin;C:VisaPointsbperlperlbin

Options Selected:
 Simulate ShellExecute by inserting any App Paths directories into the PATH environment variable.
 Log DllMain calls for process attach and process detach messages.
 Log DllMain calls for all other messages, including thread attach and thread detach.
 Hook the process to gather more detailed dependency information.
 Log LoadLibrary function calls.
 Log GetProcAddress function calls.
 Log thread information.
 Use simple thread numbers instead of actual thread IDs.
 Log first chance exceptions.
 Log debug output messages.
 Use full paths when logging file names.
 Log a time stamp with each line of log.
 Automatically open and profile child processes.
--------------------------------------------------------------------------------

00:00:00.000: Failure starting the process. %1 is not a valid Win32 application (193).


 [1]: /upload/ask/48/m/m82n6.png
 [2]: /upload/ask/48/6/6Yr37.png

时间: 原作者:

0 0

现代版本的Visual Studio 从VS2012开始,使用链接器设置标记执行图像与当前版本的Windows 兼容。 版本 6,以Vista启动。 XP和Server2003在上一代版本中,版本 5.

你仍然可以使用VS2013构建在XP上运行的程序。 但你必须做出改变。 右键单击项目,属性,常规。 将平台工具集设置更改为 v120_xp

有一些结果,你的程序是用旧版本的Windows SDK生成的。 V7.1,,最后一个仍然与XP兼容。 运行时库进行了一系列操作系统调用,这些调用仅在 6年才可用。 在没有他们的情况下,它会出现,影响与线程和文化相关的相对次要的细节。 这就是FUD应该提醒你的,仍然不是保证这种古老操作系统支持的最好主意。 确保你保持运行的XP版本,这样你可以正确的测试和再现。 请记住,你不能再安装 vs,如果你得到了一个来自XP用户的支持,那么你会得到相当重的。

原作者:
0 0

好,只是忘记在链接器选项中设置子系统。 下面是一个带有解释的链接: https://software.intel.com/en-us/articles/linking-applications-using-visual-studio-2012-to-run-on-windows-xp

原作者:
...