是否有安装msi的python脚本?我需要安装msi并运行它而不显示任何对话模式。 我在我的文件夹c:\ user \ documents上有msi,我有一个使用python脚本开发的wxpython GUI。我需要静默安装msi并从GUI运行exe。
答案 0 :(得分:7)
简单使用。没有提供转换,代码是非阻塞的:
import os
os.system('msiexec /i %s /qn' % msi_location)
使用转换,代码是非阻塞的:
import os
os.system('msiexec /i %s TRANSFORMS=%s /qn' % (msi_location, transforms_location)
使用转换,代码阻止 - 因此您知道它何时完成:
import subprocess
subprocess.call('msiexec /i %s TRANSFORMS=%s /qn' % (msi_location, transforms_location), shell=True)
有关TRANSFORMS的更多信息:https://msdn.microsoft.com/en-us/library/aa367447%28v=vs.85%29.aspx
答案 1 :(得分:2)
这不是一个真正的python问题,它取决于您的特定MSI包是否允许无人参与安装。见这篇SO文章
detect msi parameters for unattended install
如何了解MSI包的参数。然后,使用windows命令shell手动尝试无人参与安装,调用msiexec
。见这里
http://technet.microsoft.com/en-us/library/cc759262%28v=ws.10%29.aspx
了解更多信息。
最后,你需要在python中做的就是使用os.system
来调用包含名称和正确参数的msiexec
。