1. 程式人生 > >Inno Setup命令列安裝解除安裝引數

Inno Setup命令列安裝解除安裝引數



安裝命令列引數安裝程式接受可選的命令列引數。這些對於系統管理員以及其它程式呼叫安裝程式時有用。
/SP- 在安裝開始時禁用“這將安裝... 你想繼續嗎?”的提示,當然,如果 [Setup] 段的指令 DisableStartupPrompt 設為 yes 時,這將無效。
/SILENT , /VERYSILENT 告訴安裝程式後臺或完全後臺執行。當安裝程式在後臺執行時,嚮導和背景視窗將不顯示,但安裝進度視窗顯示。當安裝程式在完全後臺安裝時,這個安裝進度視窗也不顯示。其它的事件被象正常安裝一樣,例如安裝期間顯示錯誤訊息框,以及啟動時提示 (如果你沒有在 DisableStartupPrompt 或上面說明的“/SP-”命令列選項中指定)。
如果需要重新啟動,以及未使用“/NORESTART”命令列 (看下面),並且安裝程式在後臺執行,將顯示“立即重新啟動嗎”訊息框。如果在完全後臺安裝模式,將在不詢問的情況下重新啟動。
/SUPPRESSMSGBOXES 命令安裝程式可禁止訊息框。只在用“/SILENT”和“/VERYSILENT”編譯時有效。
在這種情況下預設會有一個選擇:

在“保留新檔案嗎”中會選擇是。 
在“檔案存在,確認覆蓋。”中會選擇否。 
在中斷/重試情況下會選擇中斷。 
在重試/取消情況下會選擇取消。 
在 DiskSpaceWarning/DirExists/DirDoesntExist/NoUninstallWarning/ExitSetupMessage/ConfirmUninstall 情況下會選擇是 (繼續)。 
在 FinishedRestartMessage/UninstalledAndNeedsRestart 情況下會選擇是 (重啟)。 
有 5 種訊息不能禁止:

中斷安裝程式訊息框。 
“退出安裝程式嗎”訊息框。 
當安裝程式需要在新磁碟安裝但新磁碟未找到時顯示的 FileNotInDir2 訊息框。 
在安裝程式或解除安裝程式不能讀取命令列引數之前顯示的任何 (錯誤) 訊息。 
用 [Code] 段支援函式 MsgBox 顯示的訊息框。 
/LOG 使安裝程式在使用者的臨時目錄建立一個記錄安裝程式安裝期間 [Run] 段詳細動作的日誌檔案。這對於安裝除錯有幫助。例如,在你認為一個檔案應該被替換,但你懷疑它沒有被替換時 (反之亦然),該日誌檔案將告訴你這個檔案是否確實被跳過,並且為什麼會跳過。
日誌檔案若要當前日期的唯一名字建立(它不覆蓋或新增到現有的檔案中)。
日誌檔案中包含的資訊是用自然語言,非常容易看懂,對於使用者來說不會難以理解。也不用進行機器分析;檔案的格式是不預先通知服務改變。
/LOG= " 檔名 " 與 /LOG 相同,另外它還允許你為日誌檔案指定一個固定的路徑/檔案。如果相同的名字在路徑中已經存在則將被覆蓋,如果不能建立檔案,安裝程式將帶錯誤訊息中斷。
/NOCANCEL 通過禁用“取消”按鈕和忽略在“關閉”按鈕的單擊動作,來防止使用者在安裝進行時取消操作,與 /SILENT 或 /VERYSILENT 一起使用有用。
/NORESTART 告訴安裝程式即使需要重新啟動,也不重新啟動。
/RESTARTEXITCODE= 退出程式碼 指定當需要重新啟動時安裝程式返回的自定義退出程式碼。通常跟隨“/NORESTART”。同時請查閱[url=mk:@MSITStore:C:\Program%20Files\Inno%20Setup%205\ISetup.chm::/topic_setupexitcodes.htm]安裝退出程式碼[/url]。
/LOADINF= " 檔名 " 告訴安裝程式在選中命令列後從指定的檔案載入設定。這個檔案可以是使用下面說明的“/SAVEINF=”命令提供的。
如果檔名包含空格,不要忘記使用引號。
/SAVEINF= " 檔名 " 告訴安裝程式儲存安裝設定到指定的檔案。
告訴安裝程式儲存安裝設定到指定的檔案。
/LANG= 語言 指定要使用的語言。指定的語言是 [Languages] 段條目中指定的語言內部名字。
當使用了一個有效的 /LANG 引數時,選擇語言對話方塊將被禁用。
/DIR= " x :\ 目錄名 " 不考慮在選擇目標位置嚮導頁中顯示的預設目錄名。必須指定一個完整的路徑。
/GROUP= " 資料夾名 " 不考慮在選擇開始選單資料夾嚮導而中顯示的預設資料夾名。如果 [Setup] 段指令 DisableProgramGroupPage 設為 yes,這條命令列引數將被忽略。
/NOICONS 告訴安裝程式在初始時選中選擇開始選單資料夾嚮導頁中的“不建立任何圖示”選擇框。
/TYPE= 型別名 不考慮預設[url=mk:@MSITStore:C:\Program%20Files\Inno%20Setup%205\ISetup.chm::/topic_typessection.htm]安裝型別[/url]。
If the specified type exists and isn't a custom type, then any /COMPONENTS parameter will be ignored。
/COMPONENTS= " 用逗號分隔的元件名列表 " 不考慮預設[url=mk:@MSITStore:C:\Program%20Files\Inno%20Setup%205\ISetup.chm::/topic_componentssection.htm]元件[/url]設定。使用這個命令列引數使安裝程式自動選擇一個自定義安裝型別。
Only the specified components will be selected; the rest will be deselected。
If a component name is prefixed with a "*" character, any child components will be selected as well (except for those that include the dontinheritcheck flag). If a component name is prefixed with a "!" character, the component will be deselected。
This parameter does not change the state of components that include the fixed flag。
示例:
Deselect all components, then select the "help" and "plugins" components:
/COMPONENTS="help,plugins" 示例:
Deselect all components, then select a parent component and all of its children with the exception of one:
/COMPONENTS="*parent,!parent\child" /TASKS= " 用逗號分隔的任務名列表 " 指定初始應該是選中狀態或不選中狀態的 [url=mk:@MSITStore:C:\Program%20Files\Inno%20Setup%205\ISetup.chm::/topic_taskssection.htm]任務[/url] 列表。要取消任務的選中,用“!”字元作為名字的字首。
只有指定的任務 (以及它的子任務) 將被選中;其餘任務不被選中。如果你想保持預設的任務設定,只選中/不選中某些任務,請使用 /MERGETASKS。
If a task name is prefixed with a "*" character, any child tasks will be selected as well (except for those that include the dontinheritcheck flag). If a task name is prefixed with a "!" character, the task will be deselected。
示例:
不選中所有任務,然後選擇“desktopicon”和“fileassoc”任務:
/TASKS="desktopicon,fileassoc" 示例:
不選中所有任務,然後選擇上級任務專案,但它的子任務中的某個不選中:
/TASKS="*parent,!parent\child" /MERGETASKS= " 用逗號分隔的任務名列表 " 像 /TASKS 引數,除指定的任務將被與已有的任務集合並外,其它按預設選擇。
如果 [url=mk:@MSITStore:C:\Program%20Files\Inno%20Setup%205\ISetup.chm::/topic_setup_useprevioustasks.htm]UsePreviousTasks[/url] 設為 yes,指定的任務將在上一次任務回覆後被選中/不選中。
示例:
保持選定任務的預設設定,但另外選中“desktopicon”和“fileassoc”任務:
/MERGETASKS="desktopicon,fileassoc" 示例:
保持選定任務的預設設定,但不選中“desktopicon”任務:
/MERGETASKS="!desktopicon" /PASSWORD= 密碼 指定要使用的密碼。如果 [Setup] 段指令 Password 未設定,這條命令列引數被忽略。
當指定無效的密碼時,這個命令列引數也被忽略。
解除安裝命令列引數解除安裝程式 (unins???.exe) 接受可選的命令列引數。這些對於系統管理員是非常有用的,可以由其它程式呼叫解除安裝程式。
/SILENT , /VERYSILENT 當指定時,解除安裝程式將不詢問使用者啟動確認或顯示任何訊息就開始解除安裝,直到完成。不再使用的共享的檔案將不提示自動刪除。但致命錯誤的訊息仍將在螢幕中顯示。當指定“/VERYSILENT”時,解除安裝進度視窗不顯示。
如果需要重新啟動,並且“/NORESTART”命令未使用 (看下面),以及“/VERYSILENT”指定,解除安裝程式將不詢問重新啟動。
/SUPPRESSMSGBOXES 命令解除安裝程式禁止訊息框。只在用“/SILENT”和“/VERYSILENT”編譯時有效。查閱[url=mk:@MSITStore:C:\Program%20Files\Inno%20Setup%205\ISetup.chm::/topic_setupcmdline.htm]安裝命令列引數[/url]幫助主題獲取詳細資訊。
/LOG 使解除安裝程式在使用者的臨時目錄建立一個記錄安裝程式解除安裝期間和 [UninstallRun] 詳細動作的日誌檔案。這對於安裝除錯有幫助。
日誌檔案若要當前日期的唯一名字建立 (它不覆蓋或新增到現有的檔案中),當前它不能自定義檔名。
日誌檔案中包含的資訊是用自然語言,非常容易看懂,對於使用者來說不會難以理解。也不用進行機器分析;檔案的格式是不預先通知服從改變。
/LOG= " 檔名 " 與 /LOG 相同,except it allows you to specify a fixed path/filename to use for the log file. If a file with the specified name already exists it will be overwritten. If the file cannot be created, Uninstall will abort with an error message。
/NORESTART 告訴解除安裝程式不重新啟動,即使需要這樣做。