VS2012:“找不到资源编译器DLL。请确保路径正确。“

时间:2014-03-11 16:27:15

标签: c++ visual-studio-2012 dll mfc

当我尝试打开VC ++ 2012项目(MFC)的资源视图以进行资源编辑时,我收到此错误:“找不到资源编译器DLL。请确保路径正确。“

我确实在SO上找到了一个早期的问题:“VS2010:”无法找到资源编译器DLL。请确保路径正确。“和许多其他类似的通过谷歌,但没有给出的建议有帮助。做了两次修复我的VS2012安装程序,确实尝试了文章中提到的所有注册表调整。看来所需的DLL是rcdll.dll,在几个Windows SDK Bin目录中找到它,将它们添加到系统路径(32位和x64目录),但仍然没有。

在这个问题上浪费了4个多小时。还有什么可以尝试的吗?谢谢!

Greg

2 个答案:

答案 0 :(得分:1)

出于某种原因,当我发布上述问题时,我在另一个帐户下登录了我。不会批准我自己的答案,以避免给自己分数。

最后想出来,经过一个小时左右的跟踪VS2012 devenv.exe所做的所有文件和注册表访问调用,使用Sysinternals procmon。事实证明VS2012,至少在我的系统上,只关注这个键,忽略了其他一切:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v8.0

InstallationFolder 值设置为有效的Windows SDK文件夹(无论是版本7,7.1或8.1 SDK),所有文件都开始正常运行。奇怪的是,所有其他类似问题的帖子都建议设置:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows
CurrentInstallFolder CurrentVersion 的值

添加到您希望它使用的任何SDK中,它应该可以正常工作。不是这样,只读取和尊重上面提到的键和值。多次重新安装Windows 7.1和8.1 SDK也无济于事。

也许它是VS2012 Update 4中的某种错误,这是本文撰写时最新的错误。在这样一个愚蠢的问题上失去了这么多小时,希望这篇文章可以帮助其他人避免这种损失。

格雷格

答案 1 :(得分:0)

您可以简单地将编译器从资源编译器更改为 C/C++ 编译器,您可以通过简单地制作资源来做到这一点,然后右键单击已生成的空资源并在资源右击 [nameofyourproject].rc,然后选择属性,然后从项目类型将其更改为 C/C++ 编译器。