首页
python
Win桌面应用自动化pywinauto
pywinauto遍历展示程序的所有菜单项
Python3使用串口
Python字符串处理
Python3实现配置文件差异对比(键值对key=value的形式)
正则
正则匹配两个字符之间的字符串
正则提取markdown中图片链接
正则表达式基本知识
字符串-正则实例
Python生成8位随机字符串的一些方法
python3批量ping检测
python3检测一批主机ip的tcp端口
Python3--DNS
python3备份交换机配置
Pyhton3--Win注册表
python远程开机工具
端口的问题以及绑定端口(Python)
Python-网络
检测到win电脑断网就发出告警声音
Python编写的DNS服务可靠性测试程序
Python编写的TCP/UDP端口探测程序
Python抓包-Pyshark
3D人体骨架检测(mediapipe)
VSCode编辑器
开源IT运维项目
python知识点
Python3使用snmp获取H3C交换机arp表
Python检测tcp端口状态并发送到企微群
Python3使用smtp发邮件
Python3使用smtp发邮件(带附件)
Python3拉取微软AD域所有用户信息
Python3使用微软AD域账号认证
自动更新公网域名的解析(阿里云)
每日定时推送Excel中排班表信息到企微群
Django
Django模板标签
Django在发送POST请求时返回403错误
Django-mysql数据库条件查询
uwsgi 配置 python virtualenv 虚拟环境目录 ( ini 配置)
常用收藏
python3数据类型转换
python处理文本
txt每行一个字符串_用英文逗号连接
txt_匹配并拆分出需要字符串
python获取日期时间
python执行linux命令的三种方式
python使用ssh连接到linux服务器执行命令
本文档由 内网文摘 发布,转载请注明出处
-
+
home page
Pyhton3--Win注册表
[python遍历注册表中某值下各项](https://www.csdn.net/tags/NtzaQgxsOTg1NDYtYmxvZwO0O0OO0O0O.html "python遍历注册表中某值下各项") python遍历注册表中某值下各项内容 需要import win32api 和 win32con win32api的装载可参见 [https://blog.csdn.net/weixin_45903952/article/details/104054008] 定义了一个reglist函数并迭代,函数的参数为要遍历的路径和层次,层次为显示子项缩进制表位 其中print 的item为键值的元组数据,只用了每个元组的第1个元素:子键名称。即item[0] ```python #coding=gbk import win32api import win32con reg_root = win32con.HKEY_CURRENT_USER reg_path = r'Software\Microsoft\Windows\CurrentVersion\Applets' reg_flags = win32con.WRITE_OWNER|win32con.KEY_WOW64_64KEY|win32con.KEY_ALL_ACCESS #遍历枚举子键 def reglist(reg_path1,n): key = win32api.RegOpenKeyEx(reg_root, reg_path1, 0, reg_flags) print (reg_path1 ,"有子项",(win32api.RegQueryInfoKey(key))[0],"个") for item in win32api.RegEnumKeyEx(key): print("\t"*n,item[0]) if (win32api.RegQueryInfoKey(key))[0] >=1: reg_path2=reg_path1+ "\\"+str(item[0]) #print (reg_path2) n=n+1 reglist(reg_path2,n) else: pass n=n-1 n=1 reglist (reg_path,n) #关闭键 key = win32api.RegOpenKeyEx(reg_root, reg_path, 0, reg_flags) win32api.RegCloseKey(key) ``` 示例为HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets中各值 运行结果:如下 ![](/media/202205/2022-05-07_110529.png) 获得键后, 可用win32api.RegEnumKey(key,序号)获取键值名称,注意,序号是从0开始 可以用win32api.RegSetValueEx修改 win32api.RegSetValueEx(key,keyname,0,win32con.REG_SZ,keyvalue) 方法各个参数分别是 键、值的名称、0、值的类型、值的数值。 对于已存在的值的类型、数值可以通过regedit中查看 用win32api.RegDeleteKey win32api.RegDeleteKey(key,keyname) 各个参数分别是 键、值的名称 另一个删除新项的代码 ```python #coding=gbk import win32api import win32con # 打开项 key = win32api.RegOpenKey(win32con.HKEY_CURRENT_USER, 'Software\Microsoft\Windows\CurrentVersion\Applets',0, win32con.KEY_ALL_ACCESS) chuan=input ("自定义删除表项中一致性字符串,默认为'新项 #': ") if chuan=="": chuan="新项 #" lenchuan=len(chuan) #print (chuan,len(chuan)) keysb1=(win32api.RegQueryInfoKey(key))[0] # RegQueryInfoKey函数查询项的基本信息 #(26, 7, 128178812229687500L) # 返回项的子项数目、项值数目,以及最后一次修改时间 result = False print ("注册表中共有",keysb1,"个子项") #print(win32api.RegEnumKey(key,0)) for i in range(keysb1,0,-1): #若不进行try操作,如果test不存在的话会有异常 try: if win32api.RegEnumKey(key,i-1) != '123465': print("第",i,"个子项,名称:",win32api.RegEnumKey(key,i-1),end="") #print(win32api.RegEnumKey(key,i)[0:lenchuan]) if (win32api.RegEnumKey(key,i-1)[0:lenchuan]) == chuan: print ("此项被删除!!",end="") win32api.RegDeleteKey(key,win32api.RegEnumKey(key,i-1)) print () pass else: result = True break except: pass # keysb1=(win32api.RegQueryInfoKey(key))[0] print ("\n操作后子项列表如下:") for i in range(keysb1,0,-1): print("第",i,"个子项,名称:",win32api.RegEnumKey(key,i-1)) ```
local
May 7, 2022, 11:07 a.m.
Share documents
Collection documents
Last
Next
Scan wechat
Copy link
Scan your mobile phone to share
Copy link
关于 LocalNetwork
LocalNetwork
是由mrdoc开源
LocalNetwork.cn
修改的在线文档系统,作为个人和小型团队的云笔记、文档和知识库管理工具。
如果此文档给你或你的团队带来了帮助,欢迎支持作者持续投入精力更新和维护!内网文摘 & LocalNetwork
>>>主页
logo
logo
Download markdown file
share
link
type
password
Update password