2011-03-31 52 views
2

存在Windows安裝程序Windows服務(指向msiexec可執行文件)。此服務「啓動類型」爲「手動」,「登錄爲」設置爲「本地系統」。當我們雙擊任何.msi文件時,這個Windows服務會自動啓動。此外,還有一個進程(msiexec)在登錄的用戶上下文中創建。我想了解這兩個不同流程所起的作用以及這兩個流程如何相互影響?Windows安裝程序Windows服務的作用

回答

3

該服務被稱爲服務器進程,它基本上處理所有的MSI安裝。在安裝過程中,它可以有多個執行操作的MSIEXEC子進程(例如自定義操作)。

在當前用戶帳戶下運行的進程稱爲客戶端。它的目的是顯示安裝UI,處理所有與UI相關的操作,並啓動由服務器進程處理的執行順序。

因此,客戶端啓動,顯示UI並開始由服務器處理的實際安裝。這些進程由Windows安裝程序服務自動處理。

你到底需要做什麼?

+0

我的目標是瞭解Windows安裝程序技術。 – 2011-03-31 13:14:13

+0

我創建了一個自定義操作 - 我假設它將由服務器進程(Windows服務)執行,但不同的msiexec進程在登錄的用戶上下文中執行它。 – 2011-03-31 13:15:39

+0

如果要在本地系統帳戶下運行自定義操作,請確保它沒有模擬延遲(msidbCustomActionTypeInScript + msidbCustomActionTypeNoImpersonate):http://msdn.microsoft.com/en-us/library/aa368069(VS.85)的.aspx – 2011-03-31 14:23:05