如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#!/usr/bin/python #-*-coding:utf-8-*- import _winreg as wr #导入内置的windows注册表操作库 import os from socket import * import getpass def GetStart(): key = r 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run' aRegL = wr.ConnectRegistry(None,wr.HKEY_LOCAL_MACHINE) aRegC = wr.ConnectRegistry(None,wr.HKEY_CURRENT_USER) #getpass.getuser()为得到当前的用户名 startdir = os.listdir(r 'C:\Users' + os.sep + getpass.getuser() + r '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup' ) startExe = { 'localmachine' :[], 'currentuser' :[]} startExe[ 'startdir' ] = startdir try : aKeyL = wr.OpenKey(aRegL,key) #打开键,返回句柄 aKeyC = wr.OpenKey(aRegC,key) for i in range(1024): try : startExe[ 'localmachine' ].append( wr.EnumValue(aKeyL,i)) except: break #异常就是终点,退出循环 for i in range(1024): try : startExe[ 'currentuser' ].append( wr.EnumValue(aKeyC,i)) except: break finally: wr.CloseKey(aKeyL) wr.CloseKey(aKeyC) return startExe def main(): import sys reload(sys) sys.setdefaultencoding( "utf-8" ) start = GetStart() #这个函数返回一个字典 print 'LocalMachine' .center(50, '*' ) for i in start[ 'localmachine' ]: #迭代字典中的数据 print i print 'CurrentUser' .center(50, '*' ) for i in start[ 'currentuser' ]: print i print 'StartUp dir' .center(50, '*' ) for i in start[ 'startdir' ]: print i if __name__== "__main__" : main() |
以上这篇python得到windows自启动列表的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/CosmopolitanMe/article/details/53967930