2011-09-26 84 views
7

無聲的Windows Installer安裝程序目前,我有一個MSI執行的重大升級,並推出爲:沒有自動重啓

msiexec.exe /i installer.msi /qn REBOOT=ReallySuppress 

我的問題是關於特定財產重新啓動= REALLYSUPPRESS:這是否意味着它不會重新啓動系統,但會在用戶手動重啓系統時進行適當的更改(如果應用)?或者它會忽略那些需要重新啓動系統的事情?

回答

10

安裝程序執行所有操作。如果需要,值ReallySuppressREBOOT屬性或/norestart option只是簡單地抑制系統重新啓動。並且msiexec.exe退出代碼將爲3010(ERROR_SUCCESS_REBOOT_REQUIRED),以向調用應用程序指示需要重新啓動系統。

安裝過程中使用的文件已被移走,系統重新啓動時將被永久刪除。建議儘快重新啓動系統,因爲在此之前,一些進程將使用舊的(鎖定的)文件,而新進程將使用新的更新文件,因此存在模糊不清的空間,特別是因爲可能存在註冊表也在變化。因此,當你有幾個軟件包可以安裝時,/ noreboot選項很有用,並且你想在最後一個軟件包後重新啓動,但只有在絕對必要時才能重新啓動。忽略重啓提示並不是一個好方法。

+0

感謝您的回答Alexey,我只是想知道您在哪裏找到這些信息,因爲在Windows Installer文檔中(http://msdn.microsoft.com/zh-cn/library/windows/desktop/aa372024(v=vs) .85).aspx)我找不到像這樣的東西。問候! –

+0

@Santiago是的,這個網頁沒有提到它。但它是它的工作方式。它來自經驗。 –

+1

@Stephen我同意Windows Installer可以替換正在使用的文件,但通常不會因爲DLL版本之間的不明確性。如果更換,則不需要重新啓動。 Raymond Chen解釋了[爲什麼Windows不會替換正在使用的文件](http://technet.microsoft.com/en-us/magazine/2008.11.windowsconfidential.aspx「Windows可以但不會」)。在Windows 7中,Windows安裝程序使用*重新啓動管理器*來防止系統重新啓動,以便安全地*避免它。 –