在python中读取注册表中的键值,代码如下:
#coding:utf-8 import win32api, win32con import os key = win32api.RegOpenKeyEx(win32con.HKEY_CLASSES_ROOT, 'CLSID\\{01249E9F-88FF-45d5-82DB-A1BEE06E123C}\\Shell\Open\\Command', 0, win32con.KEY_READ) keyValue = win32api.RegQueryValue(key, '') print keyValue
然后运行的时候报下面的错误:
Traceback (most recent call last): File "D:\users\Desktop\yunpanAuto.py", line 8, in <module> key = win32api.RegOpenKeyEx(win32con.HKEY_CLASSES_ROOT, 'CLSID\\{01249E9F-88FF-45d5-82DB-A1BEE06E123C}\\Shell\Open\\Command', 0, win32con.KEY_READ) error: (2, 'RegOpenKeyEx', '\xcf\xb5\xcd\xb3\xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xce\xc4\xbc\xfe\xa1\xa3')
这个依据我自身的问题,原因是我的window系统是64位,而python是32位,因此需要加上另外一个参数:
key = win32api.RegOpenKeyEx(win32con.HKEY_CLASSES_ROOT, 'CLSID\\{01249E9F-88FF-45d5-82DB-A1BEE06E123C}\\Shell\Open\\Command', 0, win32con.KEY_READ | win32con.KEY_WOW64_64KEY)
将上面的key后面的语句更改即可。