无法在Visual Studio 2005中编辑资源或创建.aps文件

时间:2013-06-10 15:12:13

标签: resources editor visual-studio-2005 corrupt

我最近将一个大型VS2005解决方案迁移到运行相同版本VS2005的新开发机器上,所有内容都是连接和编译而没有任何问题。但是,当我尝试使用资源编辑器编辑任何项目资源(例如'projectname.rc')时,收到以下错误消息:

“Visual C ++ Win32资源编辑器 资源文件已损坏,或此类文件的编辑器不可用。创建另一个资源文件或安装编辑器,然后重试。“

我试图通过多种方式纠正这个问题,并注意到以下细节:

  • 我可以确认可以在环境中成功创建和编辑一个空白的新创建的资源文件。
  • 整个解决方案已清理,中间文件已删除,并已重建。
  • 可以在外部资源编辑器(例如ResEdit)中打开中间资源脚本(projectname.rc和projectname.res),我可以确认这些脚本已正确生成
  • 未成功生成二进制资源文件(projectname.aps)。尝试启动资源编辑器时会创建一个0字节的文件,但在收到上面列出的“资源文件已损坏...”错误后会立即删除该文件。我怀疑这是问题的关键
  • this threadhttp://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/e4ef7904-0947-4792-aa4a-b28077146d02)所述,所有包含路径都已修改,以确保不包含任何尾部反斜杠字符

我很想知道是否有人有任何建议的解决方案或进一步的步骤;简而言之,似乎IDE无法创建二进制资源文件以供资源编辑器使用,尽管解决方案编译和执行没有错误

IDE详情: Microsoft Visual Studio 2005版本8.0.50727.42(RTM.050727-4200) Microsoft .NET Framework版本2.0.50727 已安装版:标准版 Microsoft Visual C ++ 2005 77633-235-0000007-41284

1 个答案:

答案 0 :(得分:1)

如果有人遇到同样的问题,我已经解决了这个问题。对我来说,问题出在rcxdti.dll,即。VC扩展编译器,在\ VC \ vcpackages中找到。

通过在我安装的Visual Studio 2010中将原始rcxdti.dll替换为该文件的更新版本,所有.RC资源文件现在都可以完全编辑并在资源编辑器中打开而没有任何问题。

关于根本原因,我怀疑DLL是否已经破坏,因为它是一个全新的VS2005安装。我怀疑它更可能是两个Visual Studio 2005开发机器的rcxdti.dll文件之间的颠覆不兼容。当然,如果有人对根本原因有更好的了解,我非常渴望听到它。