下文将介绍如何使用Python开发一个查看本机Silverlight版本的程序.我们将利用Python自带的_winreg模块(Python 3是winreg模块),以及Tkinter GUI框架.本文要求你对Windows注册表有所了解.下面我们开始.
_winreg(winreg)模块介绍
_winreg(winreg)模块是Python自带通过解析Windows注册表API来操作Windows注册表的模块._winreg(winreg)模块提供了常用的注册表操作函数,可对注册表进行增删改查操作,其中一些如下:
_winreg.OpenKey(key, sub_key, res, sam)
这个函数用于获取注册表的键.
_winreg.OpenKeyEx()
这个函数和OpenKey()函数功能相近,不过使用默认变量.
_winreg.QueryValueEx(key, value_name)
用于获取某个注册表键下特定名称的值.
_winreg.DeleteKey(key,sub_key)
用于删除某个键.
_winreg.CreateKey(key,sub_key)
用于在某个键下创建子键.
其它的函数可以参考Python官方参考手册.
获取Silverlight版本
我们打开Windows注册表编辑器,在左侧的树状窗格中展开HKEY_LOCAL_MACHINE项,找到并展开Microsoft项,找到并单击Silverlight项,在"名称"一栏内可以看到Version一项,对应的就是Silverlight的版本.我们首先创建一个变量并调用OpenKey()函数,在函数第一项输入_winreg.HKEY_LOCAL_MACHINE,第二项则输入Silverlight目录,也就是'SOFTWARE\Microsoft\Silverlight'.接着我们需要调用QueryValueEx函数,key就是我们之前的变量,value_name就是我们需要的'Version'值.详细代码如下:
我们会得到一个返回值ver,ver是一个tuple值,第一项就是我们需要的值.
Tkinter界面
接着我们创建Tkinter界面,代码如下:
程序运行界面如下:
总结
本文我们主要介绍了_winreg模块,以及如何使用_winreg模块开发查看Silverlight版本的程序.
领取专属 10元无门槛券
私享最新 技术干货