6

1>Project : error PRJ0003 : Error spawning 'rc.exe'.. 这是我在尝试运行这个读写文件的小练习程序时遇到的错误,由于我无法执行,我无法执行此操作让文件正确打开。我使用 microsoft visual c++ 2008,并且我也使用了文件路径来尝试打开文件,但我不能有人帮忙吗?

#include <iostream>
#include <fstream>
using namespace std;

int main ()
{
  ifstream infile;  
  ofstream myfile;
  int num;
  infile.open("example.txt");
    if(infile.fail())
    {
        cout << "error" << endl;
    }
  myfile.open ("example.txt");
    if(infile.fail())
        {
            cout << "error" << endl;
        }
  while(!infile.eof())
      {
          example >> num;
      }
  while(!myfile.eof())
      {
          example << num;
      }
  infile.close();
  myfile.close();
  return 0;
}
4

7 回答 7

5

臭名昭著的原因:错误生成“rc.exe”

  • 您新安装的 Visual Studio 2008 (VS2008)
  • 然后尽职尽责地使用 Service Pack 1 (SP1) 进行修补
  • 并且发现VS环境变量搞砸了,比如$(WindowsSdkDirs)。

当服务包没有正确告诉注册表在哪里可以找到安装目录时,就会发生这种情况。要解决这个问题:

  • 关闭 Visual Studio 2008
  • 开始 > 运行 > 注册表编辑器
  • 导航到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows
  • 添加名为CurrentInstallFolder的新字符串值(如果它不存在)
  • 给这个键值C:\Program Files\Microsoft SDKs\Windows\v6.0A\(或者你安装它的任何地方)

重新启动 VS2008 后,您应该能够正确编译程序了。

于 2011-11-03T10:48:40.537 回答
3

您的 Visual Studio 设置有问题,查找和运行 rc.exe 应该不会有任何问题。首先检查文件是否存在。它应该位于 c:\program files\microsoft sdks\windows\v6.0a\bin\rc.exe 中。

接下来要检查的是路径是否设置正确。工具 + 选项、项目和解决方案、C++ 目录。右上角:显示=可执行文件的目录。验证 $(WindowsSdkDirs)\bin 是否在此处列出。尝试显式添加文件夹名称。如果后一步有效,那么您的注册表就搞砸了。有点绝望,重新运行 Setup.exe 并选择修复。

于 2010-04-24T18:06:33.857 回答
1

确保“可执行文件”目录之一(可通过 Tools->Options->VC++ 目录编辑)包含 RC.exe 和 RcDll.Dll。

所需的 RC.exe 很可能放在“C:\Program Files\Microsoft SDKs\Windows\XXX\Bin”中,其中 XXX 是不同的版本号。

如果特定版本的 Microsoft SDK 不包含 RC.exe,您可以从 Microsoft 下载最新版本并将“可执行文件”直接指向新目录,尽量不要使用 $(WindowsSdkDir) 宏,因为它可能仍然指向到旧的 sdk 目录。

于 2010-11-17T06:06:48.280 回答
1

也许您的 rc.exe 在此路径中丢失:

c:\program files\microsoft sdks\windows\v6.0a\bin\rc.exe

如果这是您的问题,您可以从您朋友的计算机上复制此应用程序。呵呵,..

于 2011-01-25T09:05:50.157 回答
1

我意识到这是旧的,但我通过在安装 Windows SDK 时检查“工具”选项修复了相同的错误。这是默认选中的,假设将使用 Visual Studio 的工具,我已将其删除。

(使用 Windows SDK 7.1)

于 2012-12-04T02:49:26.377 回答
0

注册表中没有任何事情可做,Visual Studio 设置中也没有!你会发现这个问题有很多误导和错误的答案!

可以在下面的链接中找到该问题的详细说明。丢失的文件也可以在那里下载。

http://netcult.ch/elmue/Error_spawning_rc.exe.htm

于 2013-10-11T05:34:15.987 回答
0

我也遇到过这种情况。

通过阅读 Elmue 的答案(本页其他位置),我发现这是由于我安装了 VS2008 + VS2010 + SDK 然后卸载所有文件夹并手动删除一些文件夹造成的。在非标准文件夹中重新安装 VS2008 和 SDK 后,RC.EXE 文件根本不存在,安装过程中出现了一些混淆,其中一些注册表项指向 SDK 默认文件夹(而不是我使用的非标准文件夹)。更正注册表项不起作用。在运行SDK 的修复安装后,它只是“更正”了条目以再次指向错误的方向,但 RC.EXE 仍然没有安装。

最后我不得不咬住苦苹果:卸载所有东西并在他们的标准文件夹中重新安装 SDK + VS2008。然后它起作用了!

于 2013-12-02T09:06:40.627 回答