Inno Setup技巧 例項 新增自定義頁面

2021-09-06 11:23:43 字數 2234 閱讀 5100

原文

通過「新增自定義頁面」可以豐富安裝程式的功能。本文以新增乙個頁面「選擇安裝型別」為例,選擇標準安裝將跳過「選擇目標位置」和「選擇開始選單資料夾」兩個頁面。

在[code]段新增以下**:

var

page: twizardpage;

radiobutton1, radiobutton2: tradiobutton;

lbl1, lbl2: tnewstatictext;

procedure createaddonpage;

begin

page := createcustompage(wpinfobefore, '

選擇安裝型別', '請根據您的需要選擇安裝的型別');

radiobutton1 :=tradiobutton.create(page);

radiobutton1.left := scalex(80

);radiobutton1.top := scaley(40

);radiobutton1.width :=page.su***cewidth;

radiobutton1.height := scaley(17

);radiobutton1.caption := '

標準安裝';

radiobutton1.checked := true

;radiobutton1.parent :=page.su***ce;

lbl1 :=tnewstatictext.create(page);

lbl1.left := scalex(95

);lbl1.top := scaley(60

);lbl1.width := scalex(250

);lbl1.height := scaley(50

);lbl1.caption := '

按照標準模式安裝軟體到您的電腦';

lbl1.parent :=page.su***ce;

radiobutton2 :=tradiobutton.create(page);

radiobutton2.left := scalex(80

);radiobutton2.top := radiobutton1.top + scaley(60

);radiobutton2.width :=page.su***cewidth;

radiobutton2.height := scaley(17

);radiobutton2.caption := '

自定義安裝';

radiobutton2.checked := false

;radiobutton2.parent :=page.su***ce;

lbl2 :=tnewstatictext.create(page);

lbl2.left := scalex(95

);lbl2.top := lbl1.top + scaley(60

);lbl2.width := scalex(250

);lbl2.height := scaley(50

);lbl2.caption := '

您可以選擇單個安裝項,建議經驗豐富的使用者使用';

lbl2.parent :=page.su***ce;

end;

procedure initializewizard();

begin

createaddonpage;

end;

function shouldskippage(pageid: integer): boolean

;begin

if (pageid = wpselectdir) and (radiobutton1.checked) then

result := true

else

if (pageid = wpselectprogramgroup) and (radiobutton1.checked) then

result := true

end;

**中紅色部分表示自定義頁面所緊跟的嚮導頁面的curpageid值,藍色部分分別表示自定義頁面的標題和描述。

預設截圖:

自定義截圖:

Inno Setup在登錄檔新增軟體的關聯檔案

iss指令碼的 registry 新增如下 registry root hkcr subkey 關聯檔案的字尾 flags uninsdeletekey root hkcr subkey 關聯檔案的字尾 valuetype string valuename valuedata 登錄檔裡軟體名稱或者描...

Innosetup中在安裝介面左下角新增超連結

1.新建乙個標籤,這裡使用的控制項是tnewstatictext 完整的方法是 該方法傳入兩個引數 1.parentform 將這個urllabel新增到那個介面上,這裡新增到整個安裝wizardform去 2.cancelbutton 使用wizardform的cancelbutton來輔助這個u...

小技巧 為函式物件動態新增例項屬性與方法

由於使用 函式表示式定義法 定義的函式是乙個動態類 dynamic 例項,故可在執行時為其動態新增例項屬性與方法。以下 摘自 actionscript 3.0 殿堂之路 01 程式執行時宣告臨時function變數shot 02varshot function function void 07 08...