缺少注册表HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7

缺少注册表HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7

在离开我的机器几个星期后,我回来做一些Qt-using-VC10工作。问题的第一个迹象是一个关于"cl“无法识别的QtCreator错误,这导致我发现C:\Windows\System32以某种方式从PATH中删除了。无法识别"reg“命令导致vcvarsall.bat无法设置VS100COMNTOOLS,如here所述。

前面提到的线程将我引向this,它建议只需将C:\Windows\System32添加回PATH。

然而,我的麻烦还没有结束。一旦C:\Program Files (x86)\Microsoft Visual Studio10.0\VC\vcvars32.bat(由vcvarsall.bat调用的脚本)能够调用"reg",它就无法找到设置VS100COMNTOOLS所需的密钥。故障发生在以下行:

代码语言:javascript复制for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (

@if "%%i"=="10.0" (

@SET "VS100COMNTOOLS=%%k"

)

)我从vcvars32.bat得到的输出(带有未抑制的输出)是:

代码语言:javascript复制C:\Users\Bob\Desktop>for /F "tokens=1,2*" %i in ('reg query "HKLM\SOFTWARE\Micro

soft\VisualStudio\SxS\VS7" /v "10.0"') DO ()

ERROR: The system was unable to find the specified registry key or value.果然,我的分支中指定的位置并不存在。我的注册表树的相关子集如下所示:

代码语言:javascript复制HKEY_LOCAL_MACHINE\

SOFTWARE\

Microsoft\

VisualStudio\

10.0\

Debugger\

11.0\

...

9.0\

...

Debugger\

...有人知道这是怎么回事吗?在我离开两周后,windows的自动更新会对此负责吗?我如何修复我的系统,以便vcvarsall.bat可以设法设置VS100COMNTOOLS?

相关数据