标签:pat 时间 imp eva 方法 settings Owner 修改时间 div
#!/usr/local/bin/python3 __author__ = ‘曹植‘ import win32api import win32con import os import pywintypes import time class GoogleRegedit(object): """ 谷歌浏览器注册表方法实现 """ def __init__(self, path): self.reg_root = win32con.HKEY_CURRENT_USER # self.reg_path = r"Software\Google\Chrome\PreferenceMACs\Default"+‘\extensions.settings‘ self.reg_path = path self.reg_flags = win32con.WRITE_OWNER | win32con.KEY_WOW64_64KEY | win32con.KEY_ALL_ACCESS try: self.key = win32api.RegOpenKey(self.reg_root, self.reg_path, 0, self.reg_flags) except pywintypes.error: self.key = win32api.RegOpenKey(self.reg_root, r‘Software\Google\Chrome\PreferenceMACs\Default‘, 0, self.reg_flags) # self.default_value = win32api.RegQueryValue(self.key, ‘‘) # 该项的默认值,输出为空表示该默认值为设置 def read(self, name): """ 读取项值名称为name的值 :param name: :return: """ return win32api.RegQueryValueEx(self.key, name) def get_info(self): """ 返回项的子项数目、项值数目,以及最后一次修改时间 :return: """ return win32api.RegQueryInfoKey(self.key) def subkey_traversal(self): """ 子键的遍历 :return: """ return win32api.RegEnumKeyEx(self.key) def traversal(self): """ 键值对的遍历 :return: """ try: value = [] i = 0 while True: value.append(win32api.RegEnumValue(self.key, i)) i += 1 except Exception as e: pass return value def create_subkey(self, name): """ 创建一个子项 :return: """ win32api.RegCreateKey(self.key, name) def delete_subkey(self, name): """ 删除一个子项 :return: """ win32api.RegDeleteKey(self.key, name) def create(self, k, value): """ 创建键值 :param k: :param value: :return: """ key, _ = win32api.RegCreateKeyEx(self.reg_root, self.reg_path, self.reg_flags) win32api.RegSetValueEx(self.key, k, 0, win32con.REG_SZ, value) def delete(self, name): """ 删除键值 :return: """ # 删除值(key也有close方法,可以用with结构) with win32api.RegOpenKeyEx(self.reg_root, self.reg_path, 0, self.reg_flags) as key: win32api.RegDeleteValue(key, name) # 删除键(需要获取其父键,通过父键删除子键) reg_parent, subkey_name = os.path.split(self.reg_path) with win32api.RegOpenKeyEx(self.reg_root, reg_parent, 0, self.reg_flags) as key: win32api.RegDeleteKeyEx(key, subkey_name) def set(self, k, value): """ 将某个键k的值设置为value :return: """ win32api.RegSetValueEx(self.key, k, 0, win32con.REG_SZ, value) def set_default_value(self, value): """ 设置该项key的默认值 :param value: :return: """ win32api.RegSetValue(self.key, ‘‘, win32con.REG_SZ, value) def close(self): """ 关闭注册表 :return: """ win32api.RegCloseKey(self.key)
标签:pat 时间 imp eva 方法 settings Owner 修改时间 div
原文地址:https://www.cnblogs.com/caozhi00/p/10084227.html