我最近遇到了这个问题。我在 Visual Studio 2008 中有一个简单的基于控制台的项目,我在发布模式下构建并发布了它。
我们发现在干净的 windows xp sp3 机器上,双击可执行文件并没有启动,并抛出一个错误,提示“配置不正确”。我们通过在系统上安装 VS2008 可再发行包解决了这个问题。我的问题是:
1- 为什么会这样?它并没有发生在所有 xp 机器上,但其中一些机器上发生了。令人难以置信的是,在 windows xp sp3 中默认情况下不存在运行简单 win32 程序所需的文件。那么notepad.exe和其他程序在哪里运行呢?我考虑的一种可能性可能是操作系统中存在的运行时文件较旧,而 exe 清单指的是较新版本的文件。但我想知道是否是这种情况,因为 VS 2008 本身已经很老了。让我知道你的想法。
2-由于我必须在很多机器上运行 exe,我正在考虑一种方法,通过 VS 2008 中的 win32 程序静态链接所有需要的库。我知道链接器选项中的 /MT 开关,但是想知道它是否会处理所有运行时库(C++ 库和其他 Windows 库)。
谢谢。