August 14, 2004

WinRAR self-extraction installation tip

WinRAR 可以在註解加入 icon 建立參數來製作簡易的安裝程式

Delete 解壓縮前先刪除檔案
License 顯示程式的使用授權協定
Overwrite 選擇檔案的覆寫模式
Path 設定預設目標路徑
Presetup 指定解壓縮前執行的程式
SavePath 儲存目的地路徑(儲存路徑在 registry, 當下次再執行自解檔時會自動帶入, Path 參數存在時才有效)
Setup 指定解壓縮後執行的程式
Shortcut 建立解壓縮檔案的捷徑
Silent 跳過開始時的對話方塊
TempMode 解壓縮檔案到暫存資料夾
Text 加入純文字到自解檔對話方塊純文字視窗
Title 設定自解檔對話方塊標題

範例

Title=MSN Messenger 7.0.0225
Path=%temp%
Setup=msnnoad.exe /i
Overwrite=1
Silent=1
簡單的自解範例, 解完執行 msnnoad.exe
Title=MSN Messenger 7.0.0332 中文化
Overwrite=1
Path=MSN Messenger
Silent=1
TempMode=安裝前請先結束 MSN Messenger\n進行安裝?@MSN Messenger 7.0.0332 中文化
Setup=msnmsgr
解壓前秀一對話視窗, @後面接標題

Title=Maxthon 繁體中文版
Text
{-
網際暢遊(Maxthon)是一個完全免費的綠色軟體,無需註冊,
不附加任何廣告,無需安裝,解壓到資料夾後可以直接使用,
並且容許以任何形式傳播該軟體。
}
Path=Maxthon
SavePath
Overwrite=1
Shortcut=D, Maxthon.exe,,, "Maxthon"
Shortcut=P, Maxthon.exe, Maxthon,, "Maxthon"
Shortcut=P, MaxthonUINST.exe, Maxthon,, "Uninstall"
Setup=Maxthon.exe
Shortcut=D 建立桌面 icon
Shortcut=P 建立程式集 icon

Setup 程式有加參數時需留一空白

參數說明: (資料來自 WinRAR 說明檔)

Delete=<檔案名稱>

在解壓縮到目標資料夾之前刪除指定的檔案,允許數個 Delete 命令。
如果在此指定的檔案被鎖定而無法刪除,自解檔模組在解壓縮前會試著將它臨時重新命名,並在 Windows 重新啟動時刪除它,這能不能成功則取決於 Windows 版本的差異。
範例:

Delete=winrar95.exe

Delete=rarlng.dll

License=<使用授權協議對話方塊標題>

{-
使用授權協定純文字 1
使用授權協定純文字 2

}

當開始自解檔時,顯示軟體的使用授權協定,使用者可以接受,並繼續解壓縮,或拒絕並離開。
License 可以是 HTML 格式或純文字格式。後者自解檔模組會配合對話方塊將指定純文字字串結合和重新格式成最佳狀態,因此如果您希望開始新段落的話,您必須在之前加入一個空字串。
使用 HTML 可以控制顯示的字形、顏色及格式。關於 HTML 的語法在一般網際網路都找得到,或者您也可以用 HTML 編輯程式製作。
範例:

License=最終使用者使用授權協議書

{-
所有版權於 RAR 均屬於作者所專有。

此程式是共享軟體,任何人在測試期限內均可以使用此軟體。
在測試期限過後,您必須註冊。
}

Overwrite=[n]

如果 [n] 為 0,在覆寫檔案之前使用者將先被詢問。這是 覆寫 命令的預設動作,可以不需要指定。如果 [n] 不存在或是等於 1,檔案將在沒有確認的狀況下全部覆寫。如果 [n] 等於 2,所有已存在的檔案將不會被覆寫。
範例:
Overwrite=1

Path=<路徑>

設定預設的目標路徑。路徑的絕對使用起始點在預設下為 <磁碟機號>:,如果 <路徑> 只包含名稱,它將會被附加到 Program Files 資料夾下,如果您不希望這麼做,請從 '.\' 字元開始定義起始 <路徑>。
範例:
設定 [Calc 3.05 beta] 為資料夾名,位置在 [Program Files] 下,當成預設路徑:

Path=Calc 3.05 beta

設定 [C:\Calc] 當作預設路徑:

Path=C:\Calc

設定 [Calc] 在根目錄下當作預設路徑:

Path=.\Calc

Presetup=<程式>

自解檔在解壓縮之前將試著執行 <程式>,在執行 <程式> 之前必須先指定目標資料夾。您可以使用此命令,比如說,當安裝新版本於舊版本上面時,用以移除先前的程式版本。
範例:
Presetup=uninstall.exe /clean

Setup=<程式>

在成功解壓縮之後自解檔將會試著執行 <程式>。在執行 <程式> 之前,包含已解壓縮檔的資料夾將會設為目前資料夾
範例:
Setup=setup.exe

注意

1) 如果您在使用自解檔執行 InstallShield setup.exe 有問題的話,請試著執行 [setup.exe /SMS] 來代替簡潔的 [setup.exe]。此選項允許自解檔檢測安裝程式的離開。
2) 全部在自解檔命令列所指定的選項都會從 Setup=<程式> 命令提交給程式,自解檔它自己則只認得 -s 選項,也就是強制背景安裝模式而不顯示開始對話方塊。
3) 自解檔模組在安裝之前先設定 sfxname 環境變數。這個變數包含自解檔名稱,所以安裝程式可以預先讀取這類的資訊。


shortcut=<目標類型>,<來源名稱>,<目標資料夾>,<敘述>,<捷徑名稱>

為解壓的檔案建立一個捷徑。

目標類型 是目標區域種類,可以有下列值:

D 在桌面建立捷徑
S 在 [開始] 功能表建立捷徑
P 在 [開始] 功能表/[程式集] 中建立捷徑
T 在 [啟動] 功能表中建立捷徑
來源名稱 是壓縮檔名稱。

目標資料夾 是建立捷徑的資料夾,如果它不存在,將被自我解壓縮檔建立。
敘述 是敘述捷徑的字串。
捷徑名稱 是由自解檔建立的 .lnk (捷徑) 檔案的檔案名稱。
所有選項用逗號分隔。如果您需要在選項內加入逗號字元,就把整個選項加上引號。如果您要顯示引號,則必須打兩次引號。只有目標類型和來源名稱是必需的,其他選項選用。
範例
在桌面建立在 WinRAR 資料夾中連接到 winrar.exe 的捷徑,帶有 [WinRAR 執行檔] 的敘述和 [WinRAR 壓縮軟體] 的名稱:

Shortcut=D, winrar.exe, WinRAR, "WinRAR 執行檔", "WinRAR 壓縮軟體"

Silent[=選項]

開始解壓縮時不顯示開始對話方塊。
選項 可以是 1 或 2。如果 選項 是 1,開始解壓縮對話方塊會完全隱藏,包含進度顯示和檔案名稱。如果 選項 是 2,則跳過開始解壓縮的確認,但使用者仍然可以看到壓縮檔案的解壓縮進程。
範例:
Silent=2

TempMode=[問題?述][@視窗標題純文字]

此命令強制自解檔建立一個臨時目錄,將全部檔案解壓縮至此,然後開始執行 Setup 命令所指定的程式,並在完成 Setup 程式之後將臨時目錄中的內容全部清除。當執行這些操作時,自解檔會自動設定為 安靜模式。如果 TempMode 命令存在的話,?述中將有 Setup 命令且不得使用 path 命令。
TempMode 命令可以有字串選項的選項,在解壓縮之前可用以定義問題和問題的標題。這樣的範例,僅在當使用者選擇 [是] 按鈕時才會開始解壓縮。
範例:

a) TempMode
b) TempMode=您希望繼續安裝 Calculator 3.05 嗎?@Calculator 安裝程式

Text=<字串>

b)

Text

{-
字串 1
字串 2

}

加入指定純文字或 HTML 字串到自解檔模組的文字輸出視窗。當自解檔模組第一次遇到 Text 命令時,它會重置此視窗在加入 <字串> 之前的預設內容,後續命令則附加 <字串> 到已存在的純文字後。
這種命令語法可以一次加入單行字串或數行字串。
如果使用純文字語法時,自解檔模組會配合對話方塊將指定純文字字串結合和重新格式成最佳狀態,因此如果您希望開始新段落的話,您必須在之前加入一個空字串。
使用 HTML 可以控制顯示的字形、顏色及格式。關於 HTML 的語法在一般網際網路都找得到,或者您也可以用 HTML 編輯程式製作。

範例:

a) 加入單一字串到對話方塊視窗
Text=這是我的新程式

b) 加入指定純文字到對話方塊視窗 [Text

{-
此程式最有趣的特性是:
- 支援 Windows 剪貼簿;
- 每一個處理的檔案大小最大為 10KB;
}

Title=<標題>

設定自解檔的視窗標題。
範例:
Title==Calculator,版本 3.05


Posted by pank at August 14, 2004 09:02 PM
Comments

請問一下,能將壓縮檔ㄉ密碼設定成如果第一次失敗就自動摧毀壓縮檔嗎??

Posted by: at April 3, 2005 12:25 PM
Post a comment













Remember personal info?