ResGen.exe”已退出,代码为2 问题处理
Posted 九园
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ResGen.exe”已退出,代码为2 问题处理相关的知识,希望对你有一定的参考价值。
转载自 http://blog.sina.com.cn/s/blog_5f82a1060101d8tm.html
在64位的Windows 7下,用VS2010编译4.0以前的.Net项目会有问题。原因么,是一个叫Resgen.exe的玩意儿,是跑在64位环境下的,当他试图加载32位的可执行代码时,就会执行失败:
Failed to execute command:
""C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\ResGen.exe" (此处省略···)
解决方法
按照官方的解决方法,直接翻译过来
1. 关闭Visual Studio。
2. 在Visual Studio Tools目录,以管理员身份运行Visual Studio Command Prompt (2010),
[注:这个在开始--所有程序--microsoft visual studio 2010 下面]
切换目录到":\Program Files (x86)\Microsoft SDKs\Windows\v\bin\”. ( 我的是v7.0A )
[注:用cd命令切换目录]
3. 执行命令:
corflags /32bit+ ResGen.exe /force
4. 在记事本中打开 .csproj 文件
5. 添加<ResGenToolArchitecture>Managed32Bit</ResGenToolArchitecture>这个属性在PropertyGroup下面: 然后保存文件。
再次尝试编译,一切OK!
以上是关于ResGen.exe”已退出,代码为2 问题处理的主要内容,如果未能解决你的问题,请参考以下文章
VS2010反编译dll之后存在的resource修改为resx
MTK功能机编译错误ToolsMSYSinmake.exe: *** Couldn’t reserve spac e for cygwin’s heap, Win32 error