pywin32应用——Python在Windows下系统编程初步
Python是没有自带访问windows系统API的库的,需要下载。库的名称叫pywin32,可以从网上直接下载。
以下链接地址可以下载:http://sourceforge.net/projects/pywin32/files%2Fpywin32/ (下载适合你的Python版本)
运行以下代码如果出现ImportError: No module named win32api 或者出现 ImportError: No module named win32con,说明你的库没有安装好。
介绍这个库里面最重要的两个模块:win32api和win32con。win32api顾名思义,就是用python对win32的本地api进行了封装;win32con个人理解为win32constant,即win32的常量定义。
有了以上这两个模块我们就可以来一个win32版本的Python Helloworld了。
- import win32api
- import win32con
- win32api.MessageBox(win32con.NULL, 'Python 你好!', '你好', win32con.MB_OK)
运行一下,是不是看到消息框,嘿嘿,就这么简单。win32con是一个很好的工具,只要你想要的win32常量,里面基本上都有。
好的,接下来我们再用一个程序来演示一下用python写win32的程序是多么简单,修改IE。
我们采用的是修改注册表的方式,那么首先我们要对注册表进行一个简短的介绍。打开注册表:win+r, regedit,注册表的管理是按照文件夹的形式的。
注册表总共有五项:
HKEY_CLASSES_ROOT是HKEY_LOCAL_MACHINE\Software的子项,保存打开文件所对应的应用程序信息
HKEY_CURRENT_USER是HKEY_USERS的子项,保存当前用户的配置信息
HKEY_LOCAL_MACHINE保存计算机的配置信息,针对所有用户
HKEY_USERS保存计算机上的所有以活动方式加载的用户配置文件
HKEY_CURRENT_CONFIG保存计算机的硬件配置文件信息
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page 项保存的是IE的主页地址。
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Window Title 项保存的是IE的标题栏。
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Search Page 项保存的是IE默认的搜索页。
我们假设你已熟悉win32编程,所以直接上代码。
- import win32api
- import win32con
- keyname='Software\Microsoft\Internet Explorer\Main'
- page = 'www.linuxidc.net'
- title = 'I love sina web site!'
- search_page = 'http://www.linuxidc.com'
- key = win32api.RegOpenKey(win32con.HKEY_CURRENT_USER, keyname, 0, win32con.KEY_ALL_ACCESS)
- win32api.RegSetValueEx(key, 'Start Page', 0, win32con.REG_SZ, page)
- win32api.RegSetValueEx(key, 'Window Title', 0, win32con.REG_SZ, title)
- win32api.RegSetValueEx(key, 'Search Page', 0, win32con.REG_SZ, search_page)