2013-01-25 196 views
2

是否有任何python腳本來安裝msi?我需要安裝msi並運行它而不顯示任何對話模式。 我在我的文件夾c:\ user \ documents上有msi,並且我有一個使用python腳本開發的wxpython GUI。我需要靜默安裝msi並從GUI運行exe。如何使用python腳本安裝msi?

+2

我覺得這個會更適合於SO。 –

回答

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,其中包含軟件包的名稱和正確的參數。

4

簡單的使用。沒有變換提供,並且代碼是非阻塞:

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) 

有關轉換的更多信息:https://msdn.microsoft.com/en-us/library/aa367447%28v=vs.85%29.aspx

+0

非常感謝您的信息。 – Aramanethota