用innosetup4製作“寫註冊表”一例:極點五筆V3.5版

(轉載自http://www.wbfans.com/thread-5209-1-1.html

再給一個用innosetup編寫的需要填寫註冊表的例子(極點五筆3.5):
    這是一個安裝“極點3.5紀念版”的安裝程序的例子。
    請建立一個文件夾,把語言文件Simple Chinese.isl和本ISS例子文件放到此處。再在該文件夾內建三個子文件夾:Program Files,98,NT,在Program Files下面再建立一個子文件夾:Freewb,把極點的文件都放到該文件夾內;98的freewb.ime放到98文件夾內,NT的freewb.ime放到NT文件夾內;最後把語言文件Simple Chinese.isl和本ISS文件放到此處,運行inno setup即可,OK。
    在例子中,已經有激活代碼,杜老師的程序中有一個激活機registry.exe,我把他寫在程序中了,但沒有使用(前面注了;號,停止使用),另用戶協議文件也注了,找到後可把那個;號去掉;還有,IME文件我暫時放了兩個文件夾(98,NT),這是因爲IME文件往往是兩個版本,今後隨着版本的升級,爲提高性能,也許杜老師會寫成兩個,作個預防,免得剛剛編寫輸入法安裝程序的人在這裏出錯(用錯了版本會出現某些怪現象)。
    我比較忙,誰有時間,可以給程序加寫註釋,就更好讀了。

------------------------------------------------------------------------------------------------------------------
;;;jdwb v3.5_setup.iss;;;

[Setup]
MinVersion=4.0.950,4.0.1381
Compression=zip/9
AppName=極點五筆 中文輸入系統
AppVerName=極點五筆 中文輸入法 正式版
PrivilegesRequired=admin
DefaultDirName={pf}\freewb
DefaultGroupName=極點中文
AppCopyright=版權所有 極點中文輸入平臺3.5 程序設計:杜志民
AppPublisherURL=http://freewb.y365.com
AppSupportURL=http://freewb.y365.com
AppUpdatesURL=http://freewb.y365.com
DiskSpanning=Yes
;LicenseFile=license.txt
DisableDirPage=Yes
Uninstallable=No

[Languages]
Name: chs; Messagesfile: Simple Chinese.isl

[Dirs]
Name: "{app}\skin"

[Files]
;Source: license.txt; DestDir: {app}; Flags: deleteafterinstall
Source: Program Files\freewb\*.*; DestDir: {app}
Source: Program Files\freewb\skin\*.*; DestDir: {app}\skin
Source: 98\freewb.ime; DestDir: {sys}; MinVersion: 4.0.950,0; Flags: restartreplace
Source: NT\freewb.ime; DestDir: {sys}; MinVersion: 0,4.0.1381; Flags: restartreplace

[Messages]
WelcomeLabel1=歡迎使用 極點中文輸入平臺3.5 安裝嚮導
WelcomeLabel2=本程序將在你的計算機上安裝:%n%n[name/ver]。%n%n推薦你在繼續之前先關閉所有其它的程序。

[Icons]
Name: {group}\極點目錄; Filename: {app}\; WorkingDir: {app}
Name: {group}\配置文件; Filename: {app}\freewb.ini; WorkingDir: {app}
Name: {group}\使用說明; Filename: {app}\freewb.chm; WorkingDir: {app}
Name: {group}\卸載極點; Filename: {app}\unregistry.exe; WorkingDir: {app}

[Registry]
Root: HKLM; Subkey: Software; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\極點中文; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\極點中文; valueType: string; valueName: "系統目錄"; valueData: {app}\; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft\Windows; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion\Uninstall; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion\Uninstall\極點中文; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion\Uninstall\極點中文; valueType: string; valueName: "DisplayName"; valueData: "卸載極點中文"; Flags: uninsdeletekey
Root: HKLM; Subkey: Software\Microsoft\Windows\CurrentVersion\Uninstall\極點中文; valueType: string; valueName: "UninstallString"; valueData: "{app}\unregistry.exe\"; Flags: uninsdeletekey

[Code]
function ImmInstallIME(lpszIMEFileName, lpszLayoutText: String): LongInt;
external
'[email protected] stdcall';

procedure CurStepChanged(CurStep: Integer);
begin
  if CurStep = csFinished then
  begin
   ImmInstallIME(expandConstant('{sys}\Freewb.IME'),'極點中文輸入平臺')
  end;
end;

procedure AboutButtononClick(Sender: TObject);
begin
  MsgBox('極點中文輸入平臺  主頁:
http://freewb.y365.com'
         '極點中文輸入平臺3.5 程序設計:杜志民 <[email protected]>'
         '安裝程序由  山頂洞小居 實習生 製作'
         '本安裝程序使用 Inno Setup 編譯製作: '

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章