3

我正在安装一个需要 Visual C++ 可再发行组件 (x64) 的产品。首先,我的引导程序尝试检测是否已经安装了 vcredist (x64) ...

<util:RegistrySearch Root="HKLM" Key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\11.0\VC\Runtimes\x64" Value="Installed" Variable="vcredist"/>

关键是“虚拟化”(我认为),在 regedit 中它出现在...

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\11.0\VC\Runtimes\x64

请注意,我没有将“Wow6432Node”位放在我的搜索中,因为我认为这应该被操作系统隐藏?这个搜索总是失败....

[131C:0BC0][2013-03-18T12:42:17]: Registry key not found. Key = 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\11.0\VC\Runtimes\x64'

我尝试添加Win64="yes"到我的注册表搜索,但没有成功。有什么建议么?

4

1 回答 1

5

我认为您希望您的搜索看起来像这样:

<util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\11.0\VC\Runtimes\x64"
                     Value="Installed" Variable="vcredist"/>

您当前的代码正在搜索名为HKEY_LOCAL_MACHINEHKLM 的密钥。我怀疑存在。;)

于 2013-03-18T04:56:13.827 回答