如何制作Python';s winreg是否看到注册表中的条目在Adobe CC程序的注册表编辑器中可见?
我试图使用python的如何制作Python';s winreg是否看到注册表中的条目在Adobe CC程序的注册表编辑器中可见?,python,windows,adobe,winreg,adobe-cc,Python,Windows,Adobe,Winreg,Adobe Cc,我试图使用python的winreg库访问Adobe产品(Photoshop、After Effects等)的注册表项,虽然我可以在注册表编辑器中看到HKEY_LOCAL_机器子项,但python似乎看不到相同的键。是否有需要更改的权限,或者我是否以错误的方式处理此问题 我运行的代码是: import winreg i=0 while True: try: # self.aeKey = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE,
winreg
库访问Adobe产品(Photoshop、After Effects等)的注册表项,虽然我可以在注册表编辑器中看到HKEY_LOCAL_机器
子项,但python似乎看不到相同的键。是否有需要更改的权限,或者我是否以错误的方式处理此问题
我运行的代码是:
import winreg
i=0
while True:
try:
# self.aeKey = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Adobe\\After Effects\\16.0")
key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Adobe\Setup\Reader")
printTest = winreg.EnumKey(key, i)
print(printTest)
i+=1
except WindowsError:
break
结果我得到了
Acrobat Distiller
Acrobat PDFMaker
Adobe AIR
Adobe ARM
CommonFiles
ExtendScript Toolkit
ExtensionManager
PDF Admin Settings
Registration
Repair
Setup
但不是
adobebridge
,adobeacrobat
,After-Effects
,Photoshop
等
编辑:我目前正在运行32位Python。@martineau的评论正好击中了它的头部!我需要更改访问密钥以允许找到64位注册表
import winreg
i=0
while True:
try:
# self.aeKey = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Adobe\\After Effects\\16.0")
key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Adobe",0, winreg.KEY_READ | winreg.KEY_WOW64_64KEY)
assert key != None, "Key = None"
printTest = winreg.EnumKey(key, i)
print(printTest)
i+=1
except WindowsError:
break
现在生产
Acrobat Distiller
Acrobat PDFMaker
Adobe Acrobat
Adobe Bridge
After Effects
Animate
Character Animator
CommonFiles
Dreamweaver 2020
Dreamweaver CC 2019
Identity
Licensing
Photoshop
Prelude
Premiere Pro
谢谢你的帮助 您是在运行32位还是64位Python?当一个32位的程序试图访问注册表中的某些东西时,Windows会耍一些花招——这是用WOW(Windows上的Windows)实现的。我正在运行32位Python,很想知道32/64位Python墙周围的任何方法,特别是:Python 3.8.2(tags/v3.8.2:7b3ab59,Feb 25 2020,22:45:29)[MSC v.1916 32位(Intel)]在Win32上我忘了提到在64位Windows上运行32位Python时会发生这种情况,称为“注册表重定向”。我当然不是这方面的专家——看问题。更多信息,谢谢!将开始朝那个方向看!很高兴听到你解决了这个问题,我对更多研究的建议很有帮助,也为其他人发布了你的解决方案。