python实现程序安装_python实现查找所有程序的安装信息

如题,答案是:通过注册表查找。

windows系统中有两支子健存储有所有程序的安装信息:

1,HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store

202002180850143.jpg

以下是查找360浏览器安装路径的python代码示例:

import win32con, win32api

def find_360se_path():

upper_keyword = '360SE.EXE'

path = None

sub_key = r'Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store'

key = win32api.RegOpenKey(win32con.HKEY_CURRENT_USER, sub_key, 0, win32con.KEY_READ)

info = win32api.RegQueryInfoKey(key)

for i in range(0, info[1]):

value = win32api.RegEnumValue(key, i)

if value[0].upper().endswith(upper_keyword):

path = value[0]

break

win32api.RegCloseKey(key)

return path

2,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths

202002180850144.jpg

以下是查找360浏览器安装路径的python代码示例:

import win32con, win32apidef

find_360se_path():

upper_value_keyword = '360SE.EXE'

upper_item_name_keyword = '360SE6.EXE'

path = None

sub_key1 = r'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths'

key1 = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, sub_key1, 0, win32con.KEY_READ)

info1 = win32api.RegQueryInfoKey(key1)

for i in range(0, info1[0]):

key_name = win32api.RegEnumKey(key1, i)

if key_name.upper() == upper_item_name_keyword:

sub_key2 = sub_key1 + '\\' + key_name

key2 = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, sub_key2, 0, win32con.KEY_READ)

info2 = win32api.RegQueryInfoKey(key2)

for j in range(0, info2[1]):

key_value = win32api.RegEnumValue(key2, j)[1]

if key_value.upper().endswith(upper_value_keyword):

path = key_value

break

win32api.RegCloseKey(key2)

break

win32api.RegCloseKey(key1)

return path

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值