我正试图访问windows注册表(在Python中)以使用廑winreg查询键值,但无法使其正常工作。下一行返回一个窗口错误,指出“系统找不到指定的文件”:
key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, r'SOFTWARE\Autodesk\Maya\2012\Setup\InstallPath', 0, _winreg.KEY_ALL_ACCESS)
经过数小时的尝试,Python似乎看不到路径的“Maya”部分(它看起来像“2012”……等等……。“子路径”是“不可见”或不存在的)。现在我已经打开了注册表编辑器,我保证在香港电影节上有这样一条路。我在Windows764bit上。知道我做错了什么吗?这让我发疯了。谢谢。。。
您需要将访问密钥与64位访问密钥之一组合。
_winreg.KEY_WOW64_64KEY 指示64位Windows上的应用程序应在64位注册表视图上操作。
_winreg.KEY_WOW64_32KEY 指示64位Windows上的应用程序应在32位注册表视图上操作。
尝试:
您也在使用64位版本的Python,还是32位版本的Python?(后者更常见)如果您使用的是32位版本的Python,
_winreg
模块默认情况下将看到32位注册表,而regedit将显示64位注册表。您应该能够告诉_winreg
打开一个不同的视图;请参阅_winreg
模块文档中的访问权限,特别是subsection on 64-bit specific flags和the MSDN article it references。不幸的是,32位进程似乎无法访问64位注册表,但我可能遗漏了一些东西。相关问题 更多 >
编程相关推荐