vs2005 编译出的程序发布问题---应用程序配置不正确

8 views
Skip to first unread message

LeoReis

unread,
Aug 13, 2007, 3:18:16 AM8/13/07
to Wisdom and beauty form a very rare combination.
上周把编译好的客户端程序(Debug版本)拿给潜在的合作伙伴看,没想到拷贝过去之后出现了问题:
由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。
日。又是vs2005惹的祸!
捣鼓了半天,怎么也搞不定。
上google查了查,有几种解决办法,一一试过来,居然都不行。
一个是装vcredist_x86.exe,运行过之后没有任何改善。
一个是编译release版本(/MD),也不行,不过有改善,居然还要msvcr80d.dll,这不是调试版的动态库么。搞不懂,头大了。
一个是拷贝vc安装目录下的redist的Microsoft.vc80.CRT之类的目录下面的动态库到程序目录,也不行。
最后偶然打开客户端程序的manifest文件,发现里面的版本值与Microsoft.VC80.DebugCRT下的manifest文件中的版本
值不匹配,将客户端程序的manifest里面的版本改为匹配之后,问题解决了。原来是个运行库版本问题。因为我装过该死的vs2005的sp1,而提
供manifest文件的家伙却没有。

完整描述解决方案:

1。将Microsoft.VC80.DebugCRT目录拷贝到应用程序目录。目录内容类似
MyApp.exe
MyApp.exe.manifest
Microsoft.VC80.DebugCRT (目录)
...
2。确保MyApp.exe.manifest的内容中最关键的一行两个字段如下
name='Microsoft.VC80.DebugCRT' version='8.0.50727.762'
version字段的值一定要和Microsoft.VC80.DebugCRT目录中的manifest文件中的值相同

Reply all
Reply to author
Forward
0 new messages