1.查询开机自启项

startUp.py

 import re
 import win32api, win32con
 def GetValues(fullname):
     #分割出基本项name[0]
     name = re.split('\\\\', fullname, 1)
     if name[0] == 'HKEY_LOCAL_MACHINE':
         key = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, name[1], 0, win32con.KEY_READ)
     elif name[0] == 'HKEY_CURRENT_USER':
         key = win32api.RegOpenKey(win32con.HKEY_CURRENT_USER, name[1], 0, win32con.KEY_READ)
     elif name[0] == 'HKEY_CLASSES_ROOT':
         key = win32api.RegOpenKey(win32con.HKEY_CLASSES_ROOT, name[1], 0, win32con.KEY_READ)
     elif name[0] == 'HKEY_CURRENT_CONFIG':
         key = win32api.RegOpenKey(win32con.HKEY_CURRENT_CONFIG, name[1], 0, win32con.KEY_READ)
     elif name[0] == 'HKEY_USERS':
         key = win32api.RegOpenKey(win32con.HKEY_USERS, name[1], 0, win32con.KEY_READ)
     else:
         print('Error, no key named', name[0])

     info = win32api.RegQueryInfoKey(key)
     if(info[1] == 0):
         print('该项没有键值..')
     else:
         print('共有', info[1], '个键')
     for i in range(0, info[1]):
         value = win32api.RegEnumValue(key, i)
         print('{:>20}:   {}'.format(value[0], value[1]))

     win32api.RegCloseKey(key)

 if __name__ == '__main__':
     KeyNames = ['HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run', 'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunOnce', 'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunOnceEx', 'HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run', 'HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce']
     for KeyName in KeyNames:
         print('@'+KeyName)
         try:
             GetValues(KeyName)
         except:
             print('此项不存在!')
         else:
             print('此项查询成功!')
         print()

2.添加开机自启项

add2AutoRun.py

 import win32api, win32con

 #添加自启项
 added_key = 'SetIE'
 added_value = 'C:\\SetIE.py'

 key_base = win32con.HKEY_CURRENT_USER
 key_body = 'Software\\Microsoft\\Windows\\CurrentVersion\\Run'
 key_method = win32con.KEY_ALL_ACCESS
 key = win32api.RegOpenKey(key_base, key_body, 0, key_method)
 win32api.RegSetValueEx(key, added_key, 0, win32con.REG_SZ, added_value)
 win32api.RegCloseKey(key)

3.修改IE标题栏

setIE.py

 import time
 import win32api, win32con

 website = 'www.m.com'
 now = time.gmtime()
 title = '{:2}年{:2}月{:2}日'.format(now.tm_year, now.tm_mon, now.tm_mday)

 key_base = win32con.HKEY_CURRENT_USER
 key_body = 'Software\\Microsoft\\Internet Explorer\\Main'
 try:
     key = win32api.RegOpenKey(key_base, key_body, 0, win32con.KEY_ALL_ACCESS)
     win32api.RegSetValueEx(key, 'Start Page', 0, win32con.REG_SZ, website)
     win32api.RegSetValueEx(key, 'Window Title', 0, win32con.REG_SZ, title)
     win32api.RegCloseKey(key)
 except:
     print('失败!')
 else:
     print('成功!')

 input(' ')

Python -- Windows编程 -- 注册表的更多相关文章

  1. [转]Windows系统注册表知识完全揭密

    来源:http://www.jb51.net/article/3328.htm Windows注册表是帮助Windows控制硬件.软件.用户环境和Windows界面的一套数据文件,注册表包含在Wind ...

  2. 【VS调试】C#读写Windows 7注册表时抛出“不允许所请求的注册表访问权”的解决办法

    原文:[VS调试]C#读写Windows 7注册表时抛出"不允许所请求的注册表访问权"的解决办法 项目 - 属性 - 安全性,"使用ClickOnce",修改a ...

  3. Windows -- 从注册表删除IE浏览器加载项

    Windows -- 从注册表删除IE浏览器加载项 1.  一部分加载项从注册表以下位置直接删除 2.  一部分扩展项从注册表以下位置直接删除

  4. python路径写入注册表,导入三方模块win32

    python在安装第三方模块时候,需要将python的路径写入注册表,否则会提示 'python version 3.8-32 required,which was not found in the ...

  5. Windows常用注册表文件

    内容转载自我的博客 目录 1. 删除Visual Studio的右键菜单 2. 恢复Visual Studio的右键菜单 3. 右键菜单添加功能 4. USB3.0连接安卓手机刷机出现问题 1. 删除 ...

  6. java如何操作注册表(Preferences类)(在windows的注册表中保存、读取)

    我们经常需要将我们的程序运行中的一些信息(比如在选项对话框中的设置)记录下来,以做便再次运行的时候不用再重写填写这些数据.这对改善软件的人机可用性方面是很有用的.比如:数据库监控.日志工具,JDBMo ...

  7. WINDOWS系统注册表取得管理权限研究

    有的时候开发我们需要取得系统管理员权限,可以通过修改注册表实现,研究网上的各种方法,整理得一下脚本实现取得管理员权限 脚本如下 Windows Registry Editor Version 5.00 ...

  8. windows下注册表的操作

    原博:https://blog.csdn.net/denghubu/article/details/5765921 1.       注册表简介 注册表是为Windows NT和Windows95中所 ...

  9. windows下注册表脚本编写

    Reg文件就是我今天所说的注册表脚本文件,双击可将其中的数据写入注册表.利用注册表脚本文件可以对注册表进行关于键值的任何操作,而且还不受注册表被禁用的限制.     我们平常对注册表的修改大体上可以分 ...

随机推荐

  1. Hi,everybod,搬家了

    Hi,小伙伴们,我的博客已经搬家到了GitHub,地址是:http://wxb.github.io/Blog/ 博客园以后就不维护了,有什么问题咱们GitHub上讨论啦,可以在:https://git ...

  2. QGIS 2014年7月18日版本

    4. Building on Windows 4.1. Building with Microsoft Visual Studio This section describes how to buil ...

  3. Linux应用程序中使用math库报undefined reference to `sin'等

    出现该问题是因为在Linux中,sin,sqrt等函数是在libm.so库文件中,并非在math.h中. 解决办法:在Ubuntu的gcc编译环境下,直接使用lm参数即可,例如gcc -o Gen G ...

  4. hdu 5066 小球碰撞(物理题)

    http://acm.hdu.edu.cn/showproblem.php?pid=5066 中学物理题 #include <cstdio> #include <cstdlib> ...

  5. .net core使用NLog记录

    首先使用Nugut安装NLog, NLog.Extensions.Logging,using NLog.Web,并且加上配置文件 ”nlog.config“,配置文件内容网上都可以百度的到.这是我自己 ...

  6. ASP.NET Core使用EPPlus操作Excel

    1.前言 本篇文章通过ASP.NET Core的EPPlus包去操作Excel(导入导出),其使用原理与NPOI类似,导出Excel的时候不需要电脑上安装office,非常好用 2.使用 新建一个AS ...

  7. matlab学习笔记---(1)

    Matlab学习笔记 一. Desktop Basics (Matlab 基础知识) 当你打开Matlab的时候,matlab按照以下默认的方式展示出来. 该桌面主要包括以下几部分内容: 当前文件夹: ...

  8. kubernetes1.9管中窥豹-CRD概念、使用场景及实例

    欢迎访问网易云社区,了解更多网易技术产品运营经验. 前言 默认读者有kubernetes基础概念的背景知识,因此基础概念例如有状态.pod.Replica Sets.Deployments.state ...

  9. 如何做好iOS应用安全?这有一把行之有效的“三板斧”

    本文由  网易云发布. iOS应用面临很多破解问题,常见的有IAP内购破解.山寨版本.破解版本等:大众应用上,微信抢红包.微信多开等:而在iOS游戏上,越来越泛滥的外挂问题也不断困扰着游戏厂商. 网易 ...

  10. Day 22 面向对象知识.

    https://www.cnblogs.com/bigberg/p/7252349.html #类方法,静态方法, 属性方法. 类有两种作用:属性引用 和实例化.属性引用(类名.属性)class pe ...