风过无痕,生命如烟

每个人生下来都是天使,不过这个世界上也存在着恶魔。恶魔是天使变的,因为这个世界充满了诱惑。

导航

"The system cannot execute the specified program"

今天碰到一个用VC++写的程序在其他机器上运行错误的问题"The system cannot execute the specified program"

程序是控制台程序,没有使用MFC/ATL,在我自己的编译机器上运行正常,复制到另外一个服务器上运行,就出现上面的错误

上网搜了一下,找到这样一篇文章:http://blog.csdn.net/HaloKuhn/archive/2009/12/17/5027602.aspx

 以及微软的VC++程序发布问题解答:http://msdn.microsoft.com/zh-cn/library/ms235342(VS.80).aspx

问题原因:

我的编译机器上的Visual Studio 2005打过补丁包, %WinDir%\WinSxS\下面有x86_Microsoft.VC80.CRT_xxxx这样的文件夹6个

而目标机器上只有5个,检查了VC++工程生成的xxx.exe.intermediate.manifest文件,发现里面使用的CRT版本正好是我机器上有而目标机器上没有的

解决方案:

复制工程生成的xxx.exe.intermediate.manifest为xxx.exe.manifest,

把version='x.x.xxxxx.xxxx'改成目标机器上已有的任何一个版本号,然后拷贝到目标机器上,搞定

posted on 2010-03-05 11:17  hyamw  阅读(1479)  评论(0编辑  收藏  举报