import _winreg:用python操作修改windows注册表
用python操作修改windows注册表,显然要比用C或者C++简单。
主要参考资料:官方文档:http://docs.python.org/library/_winreg.html
通过 python 操作注册表主要有两种方式,一种是通过 python 的内置模块 _winreg ,另一种方式就是 Win32 Extension For Python 的 win32api 模块。这里主要简单看看用内置模块 _winreg 如何操作注册表。
1. 读取
读取用的方法是 OpenKey 方法:打开特定的 key
_winreg.OpenKey(key,sub_key,res=0,sam=KEY_READ)
例子 :此例子是显示了本机网络配置的一些注册表项
#!/usr/bin/env python
#coding=utf-8
import _winreg
key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, r"SYSTEM/CurrentControlSet/Services/Tcpip/Parameters/Interfaces/{0E184877-D910-4877-B 4C2-04F487B6DBB7}")
# 获取该键的所有键值,遍历枚举
try:
i=0
while 1:
#EnumValue 方法用来枚举键值, EnumKey 用来枚举子键
name,value,type = _winreg.EnumValue(key,i)
print repr(name),value,type
i+=1
except WindowsError:
# 假如知道键名,也可以直接取值
value,type = _winreg.QueryValueEx(key,"DhcpDefaultGateway")
print " 默认网关地址 ----",value,type
运行的结果如下:
'UseZeroBroadcast' 0 4
'EnableDeadGWDetect' 1 4
'EnableDHCP' 1 4
'IPAddress' [u'0.0.0.0'] 7
'SubnetMask' [u'0.0.0.0'] 7
'DefaultGateway' [] 7
'DefaultGatewayMetric' [] 7
'NameServer' 10.0.0.10 1
'Domain' 1
'RegistrationEnabled' 1 4
'RegisterAdapterName' 0 4
'TCPAllowedPorts' [u'0'] 7
'UDPAllowedPorts' [u'0'] 7
'RawIPAllowedProtocols' [u'0'] 7
'NTEContextList' [u'0x00000004'] 7
'DhcpClassIdBin' None 3
'DhcpServer' 10.104.4.1 1
'Lease' 907200 4
'LeaseObtainedTime' 1264122113 4
'T1' 1264575713 4
'T2' 1264915913 4
'LeaseTerminatesTime' 1265029313 4
'IPAutoconfigurationAddress' 0.0.0.0 1
'IPAutoconfigurationMask' 255.255.0.0 1
'IPAutoconfigurationSeed' 0 4
'AddressType' 0 4
'IsServerNapAware' 0 4
'DhcpIPAddress' 10.104.5.15 1
'DhcpSubnetMask' 255.255.254.0 1
'DhcpRetryTime' 453598 4
'DhcpRetryStatus' 0 4
'DhcpNameServer' 10.0.0.10 1
'DhcpDefaultGateway' [u'10.104.4.1'] 7
'DhcpSubnetMaskOpt' [u'255.255.254.0'] 7
默认网关地址 ---- [u'10.104.4.1'] 7
2. 创建 修改注册表
创建 key : _winreg.CreateKey(key,sub_key)
删除 key: _winreg.DeleteKey(key,sub_key)
删除键值: _winreg.DeleteValue(key,value)
import _winreg:用python操作修改windows注册表相关推荐
- 修改windows注册表使投影模式默认为复制
可以通过以下步骤修改Windows注册表,使投影模式默认为复制: 打开"运行"对话框(按下Win+R),输入"regedit",并按Enter键打开注册表编辑器 ...
- python 学习之 WINDOWS 注册表学习(一)
文章出自<Python绝技 运用Python成为顶级***>中部分代码,稍作修改 遍历Windows注册表键值,代码如下: import _winreg key=_winreg.OpenK ...
- linux修改windows注册表,妙招:让修改的注册表立即生效的几种方法
建站学院(LieHuo.Net)Windows文档Windows操作系统是全球最广泛,使用者最多的软件,熟悉Windows软件成了电脑操作者必不可少的功课,注册表作为"Windows的神经系 ...
- 修改windows注册表权限
修改时可能出现权限问题,无法编辑,提示键入该值的新内容时出错.解决方法如下: 右键cmd或者powershell,选择"权限",在出现的窗口中选择下方的"高级" ...
- 清理jdk注册表_JDK 9早期版本安装后的Windows注册表清理
清理jdk注册表 在我的上一篇博文中 ,我演示了在安装早期版本的JDK 9(内部版本68)之后围绕Oracle Java符号链接 (基于Windows的计算机上的C:\ProgramData\Orac ...
- JDK 9早期版本安装后的Windows注册表清理
在我的上一篇博文中 ,我演示了在安装早期版本的JDK 9(内部版本68)之后围绕Oracle Java符号链接 (基于Windows的计算机上的C:\ProgramData\Oracle\Java\j ...
- SAP GUI和Windows注册表
本文是2020年第16篇原创文章,也是汪子熙公众号总共第199篇原创文章. 今天是猪年最后一天,大年三十.往年的这个时候,我都有点紧张,因为有亲戚会来串门,而亲戚的熊孩子们,出于好奇总是会觊觎我书房里 ...
- 视频教程-C#对Windows注册表的操作-C#
C#对Windows注册表的操作 二十多年的企业管理软件开发经历,熟知管理软件的整个开发流程,熟练掌握VFP语言,掌握VB语言,了解JAVA.asp.net.CSS.HTML/HTML5等语言,使用C ...
- Windows注册表修改实例完全手册(上)
注册表是Windows操作系统的核心.它实质上是一个庞大的数据库,存放有计算机硬件和全部配置信息.系统和应用软件的初始化信息.应用软件和文 档文件的关联关系.硬件设备说明以及各种网络状态信息和数据.可 ...
最新文章
- 《网管员必读》学习笔记之DNS服务器的安装与配置
- Redis源码试读(一)源码准备
- number to string - LeetCode【数字 = 字符串】
- 开启Office 2003出现要安装PRO11.MSI解决方法 (zhuan)
- jsp中jsp中群发邮件群发邮件
- MongoDB安装步骤
- java 接口编程_JAVA面向接口编程
- 网站本地调试工具_一款Web调试代理工具:Fiddler
- 我的起点(蛇形矩阵)
- 运行npm install命令的时候会发生什么?
- ASP.NET基础教程-C#与JAVA的比较
- 递归的效率问题以及递归与循环的比较
- 备课好帮手,免费分享 下载
- 51单片机的家居空气质量监测系统proteus仿真设计
- php美颜滤镜,美颜滤镜的虚幻不如一支玻尿酸来的真实
- 解决Oracle安装过程中出现的缺少KEY_XE.reg文件的问题
- 对接企业微信3:网页授权登录
- LabWindows/CVI(一):各文件类型的含义及初始项目的搭建
- ​特拉华大学彭曦教授招收2021 Fall全奖博士生
- java毕业设计云笔记管理系统Mybatis+系统+数据库+调试部署
热门文章
- 几本对于笔试和面试有用的书
- LeetCode每日一题:N叉树的层序遍历(No.429)
- 「镁客早报」第九城市与法拉第未来成立合资公司,出资6亿美元;华为获得韩国运营商5G订单,占比95%...
- 使用C++版本Mxnett进行预测的注意事项
- 类的继承定义一个computer类在此基础上派生出两个子类(继承与多态绑定)
- Angular js 具体应用(一)
- Cracking the coding interview--Q1.5
- 关键词多样性的重要意义
- Mac OS 错误代码 -8072的可行解决方法
- Matlab坐标轴中的希腊字母