如何使用msilib从python模块创建.msi文件的示例

时间:2009-04-08 05:09:12

标签: python windows windows-installer

有人能举例说明如何使用python的msilib标准库模块从自定义python模块创建一个msi文件吗?

例如,假设我有一个名为cool.py的自定义模块,其代码如下

class Cool(object):
    def print_cool(self):
        print "cool"

我想使用msilib创建一个msi文件,它将在python的site-packages目录中安装cool.py。

我该怎么做?

2 个答案:

答案 0 :(得分:5)

您需要为模块编写distutils设置脚本,然后才能执行

python setup.py bdist_msi

将为您的模块创建一个msi-installer。

另见http://docs.python.org/distutils/apiref.html#module-distutils.command.bdist_msi

答案 1 :(得分:0)

我认为存在一个误解:将MS CAB文件视为.zip - 档案等档案。现在可以将任何内容放入此类存档中,例如cool.py。但我认为你提到了python源代码,因为你想要它执行,否则只需使用像zip这样的归档,不需要使用mslib

如果我是对的,那么您首先需要使用py2exepyinstaller之类的内容将脚本转换为可执行文件。