将Windows程序注册到已安装的程序列表

时间:2010-06-20 15:04:42

标签: winapi installer wmi registry

如您所知,Windows在控制面板中有一个“添加/删除程序”系统。

假设我正在准备一个安装程序,我想将我的程序注册到已安装程序的列表中,并希望它可以从“添加/删除程序”中卸载?

我应该使用哪些协议。有关将程序​​注册到该列表的任何教程或文档?

我使用python进行编码,我可以使用WMI(Windows管理工具)或Win32 API。恕我直言,它是用注册表项完成的,但我不确定。

我还希望在卸载时执行卸载程序以删除已安装的文件。任何相关的文档或教程都非常感谢。感谢。

3 个答案:

答案 0 :(得分:2)

如IRC所述:

“Windows将其卸载信息保存在注册表中”

它在HLLM \ Software \ Microsoft \ Windows \ CurrentVersion \ uninstall \ keys中。

你需要Win32 API中的一些东西,但我相信对win32 API有相当多的Python支持。

基本上,...... \ Uninstall \中的一个键具有唯一的名称(如“MyApp”),其中隐藏了一些特殊值。通过那里添加/删除程序。

它非常不言自明。

答案 1 :(得分:1)

如果您正在为Windows平台开发,我认为使用Microsoft的Windows Installer不会有问题。

您可以从Microsoft.com Windows Installer Page

查看Windows Installer的文档

答案 2 :(得分:0)

Inno Setup是开源的,所以也许你可以从中获得一些想法。