有关error PRJ0003错误的思考

作者:朱金灿

来源:http://blog.csdn.net/clever101

 

        今天同事遇到两个编译错误:

项目: error PRJ0003 : 生成“rc.exe”时出错。

 

项目: error PRJ0003 : 生成“mt.exe”时出错。



    网上搜了下资料,网上的说法是:

 

1.系统资源不足。关闭一些应用程序以解决此问题。

 

2.没有足够的安全特权。验证是否有足够的安全特权。

 

3.VC++ 目录中指定的可执行路径不包括您正尝试运行的工具的路径。

 

第一条和第二条的可能性较少。VC编译工程本质是调用编译链接程序,其中rc.exe编译资源脚本文件,mt.exe负责生成清单文件。既然调用它们出错,一种可能是找不到rc.exe和mt.exe,另一种可能是rc.exe和mt.exe不存在(VS的安装不全部成功有可能造成rc.exe和mt.exe)。安装VS2008后,rc.exe和mt.exe的安装路径一般在C:ProgramFilesMicrosoft SDKsWindowsv6.0ABin(x64版的工具在C:Program FilesMicrosoft SDKsWindowsv6.0ABinx64)。首先你先检查C:Program FilesMicrosoft SDKsWindowsv6.0ABin下是否有rc.exe和mt.exe,如果存在,就将C:ProgramFilesMicrosoft SDKsWindowsv6.0ABin添加到“工具”菜单栏——“选项”——项目和解决方案——“VC++目录”——“可执行文件”的路径列表上,如下图:

       如果真是rc.exe和mt.exe缺失,可能把别人相同版本的rc.exe和mt.exe拷贝过来,注意拷贝rc.exe时需要把同一目录下的RcDll.Dll也拷贝过来。还有一种可能是因为机器中毒,rc.exe或mt.exe被损坏,可以先用命令行运行rc.exe或mt.exe,如果没法运行,比如出现系统无法执行指定的程序的错误,可以把别的机器能正常运行的rc.exe或mt.exe拷贝到同一路径下覆盖原有的文件。

原文地址:https://www.cnblogs.com/lanzhi/p/6470151.html