【问题标题】:Reg query does not work with the system account in Windows 7Reg 查询不适用于 Windows 7 中的系统帐户
【发布时间】:2012-10-26 10:39:55
【问题描述】:

我正在尝试运行一个批处理文件进行安装,并且我已使用 reg 查询来确定是否存在先决条件并继续安装。

当我手动运行批处理文件时,它按预期工作,但是当我使用 SCCM 执行此批处理文件时,它失败了。

我暂停并回显了错误级别,发现 reg 查询在使用“系统”帐户运行时无法找到实际存在的注册表

有人知道吗?关于如何使用系统账户查询 HKLM 注册表的任何建议

提前致谢。

【问题讨论】:

  • reg 查询 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  • 我往下走,看看我卡在哪里...一直到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall reg 查询工作正常,但我指的是 REG QUERY HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7346B4A0-1300-0310-0409-705C0D862004} 然后它以错误代码 1 结束,即使我可以在那里看到它并且当您手动运行它时它会出现。
  • 使用进程监视器查看发生了什么,发现 reg 查询默认为 HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall,因此无法在 HKEY_LOCAL_MACHINE\ 下找到密钥SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall 有人知道将 reg 查询指向我需要它查看的键吗?
  • 我的机器上有 2 个版本的 reg.exe,一个在 system32 中,一个在 SysWow64 中。我猜 sccm 一个正在使用 syswow64 中的 reg.exe,并且从命令提示符中它命中了 system32 中的那个。这解释了不同之处在于查询行为。也许您可以尝试强制它使用 %windir%\system32\reg 但我不确定这是否允许。 (将 32 位进程作为 64 位进程的子进程启动)

标签: batch-file registry sccm


【解决方案1】:
猜你喜欢
  • 2022-01-10
  • 1970-01-01
  • 2016-07-02
  • 2011-06-04
  • 2015-09-06
  • 1970-01-01
  • 2013-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多