Installshield學習心得體驗劉詢說明閱讀對象本人IS的初學者_第1頁
Installshield學習心得體驗劉詢說明閱讀對象本人IS的初學者_第2頁
Installshield學習心得體驗劉詢說明閱讀對象本人IS的初學者_第3頁
Installshield學習心得體驗劉詢說明閱讀對象本人IS的初學者_第4頁
Installshield學習心得體驗劉詢說明閱讀對象本人IS的初學者_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、Installshield 學習心得體驗劉詢一 說明。閱讀對象:本人,IS的初學者。適用版本:Installshield 12。目的: 為了讓初學IS的朋友少走些彎路,雖然不是很好的寶典,但里面很多細節(jié)都是制作安裝包常碰到的經(jīng)典問題。另外,也為了給自己留一些資料,方便以后查詢,人的記憶力有限嘛。內(nèi)容: 制作一個簡單的安裝包;制作定制的安裝包;其它細節(jié)注意;二 Installshield 介紹。1 公司介紹。InstallShield 軟件公司是美國的一家專業(yè)從事安裝軟件開發(fā)工具生產(chǎn)的著名軟件公司。該公司由Viresh Bhatia和Rick Harold于1987年創(chuàng)建。自Windows軟件開

2、發(fā)之初,InstallShield軟件公司就已經(jīng)專注于通用安裝軟件制作工具的開發(fā)并解決Windows操作系統(tǒng)發(fā)展和變革所帶來的挑戰(zhàn),以滿足開發(fā)人員及最終用戶的需要。其主打產(chǎn)品InstallShield為滿足各種平臺和不同的安裝需求提供完整的軟件安裝解決方案,并且已經(jīng)形成人們所熟悉的一套軟件安裝的工業(yè)標準。2 產(chǎn)品介紹。在微軟Windows 2000操作系統(tǒng)引入Windows Installer(WI)服務之前,InstallShield公司以其擁有的標準的標準和技術在同類公司中遙遙領先。但由于WI的出現(xiàn)后,WI使得用戶可以利用微軟提供的API函數(shù)構(gòu)建符合微軟標準的安裝軟件,并充分享用微軟WI服

3、務的諸多好處。為了跟上安裝軟件技術的自然進化,滿足用戶的需求和接受新挑戰(zhàn),1999年9月,InstallShield 公司開始宣布InstallShield2000 專業(yè)版(簡稱ISPro2K)面世,這是該公司首次將軟件安裝開發(fā)工具劃分采用自身傳統(tǒng)標準的InstallShield Professional 和采用 微軟標準Windows Installer標準的InstallShield for Windows Installer兩個不同版本。三 制作簡單的安裝軟件。聲明:下面的教程,是把讀者當做完全沒接觸過IS的角度來制作的。1 啟動InstallShield 12。建立一個InstallS

4、hield MSI Project,如圖:2 建好后,選擇Project Assistant.你會發(fā)現(xiàn)下邊有8個選項。接下來就一項一項開始設置。3 點擊Application Information.輸入公司名稱,應用程序的名稱(注意:這個不是打包完后安裝包的名稱,默認的安裝包名稱為Setup.exe,不過可以自己定義,稍后講),版本號,公司網(wǎng)址,選擇“添加/刪除程序”中的圖標。4 點擊Installation Requirements.這里可以選擇自己的打包軟件適合運行的操作系統(tǒng)和必須安裝的第三方軟件。選不選根據(jù)自己的需要。5 點擊 Installation Achitecture。這里可以

5、定義打包文件的組織結(jié)構(gòu),默認有個DefaultFeature,將文件放在這個feature下,則都默認是必須安裝的。有印象的朋友會記得,在安裝某些軟件的時候,會有,“typical(典型)”“custom(自定義)”界面提示,選擇典型安裝,就是所有文件都安裝,選擇自定義安裝,就可以去掉一些不需要安裝的文件,但其它文件就是必須安裝的。這個還是需要自己反復折騰一下才能明白。至于怎么加文件到feature下面,稍后講述。6 點擊 Application Files。這里講述如何添加文件。上面圖片的紅色區(qū)域中的文件就是我加進去的,加到了安裝目錄下了(注意:有個INSTALLDIR)。在這里,你就可以把

6、你要打包的所有文件加進來。加入你安裝目錄下有文件夾,則先在左邊右擊GAGA,添加文件夾,再往里面添加文件。注意:添加完文件后,全選文件,右擊,選中“Always Overwrite”。否則有時會出現(xiàn)重新安裝后,有些文件沒有被覆蓋。7 點擊 Application shortcut。為自己的安裝程序生成快捷方式,可以創(chuàng)建 開始菜單和桌面的快捷方式,細心發(fā)現(xiàn)的話,你會看見左邊有個“Create an uninstallation shortcut”的選項,那個就是用來創(chuàng)建一個卸載方式的,不過很遺憾,這個快捷方式卸載后有時會有些文件刪除不干凈,不能做到完美卸載。關于怎么創(chuàng)建卸載快捷方式,做到完美卸載

7、,在后面會講。8 點擊 Application Registry。點完后就直接跳過吧,簡單的安裝工程,基本不用到這個。要了解如何操作注冊表,在后面會說。9 點擊 Installation Localization。這里我們選上“Chinese”,默認是選上英文。如果要設置中文為默認語言的話,需要點擊Installation Designer-Installation Information-General Information-String table,右擊Chinese,選擇 “Make default”。如圖:返回Project Assistant.這下還可以把英文去掉,因為之前英文被設

8、為默認,所以不能直接在這里去掉,非得這么折騰一番。10. 點擊 Build Installatio。這里可以選擇Single 或者 CD-ROM,區(qū)別在于第一種只生成一個.exe文件,而后者會生成好多文件,包括.msi文件等。第一種生成格式適合于制作升級程序,一般的升級程序都只要一個.exe文件就好了。點擊“Build Installations”就可以生成安裝包了,生成的安裝包,點擊”O(jiān)pen release folder”就可以找到了。四 制作定制的安裝軟件。聲明:該部分主要是根據(jù)自己本身在項目當中打包安裝軟件的時候碰到的一些問題,稍微整理一下作為這部分主要講解的內(nèi)容,由于項目功能的局限還

9、有本人能力的有限,只能講解自己解決的一些經(jīng)典問題,并不能全面覆蓋到強大的IS的各個方面,僅供讀者參考。這部分的內(nèi)容貌似比較吸引人哦,“定制”兩字給人比較實用,有趣的感覺。這部分內(nèi)容我們和上面制作簡單的安裝軟件走不一樣的道路,這部分內(nèi)容需要新手對IS有一定的折騰后再來看,就比較適合啦。廢話不再講,開始講解吧。點擊 Installation Designer ,如圖:1. 點擊 Installation Information 管理員權(quán)限安裝設置:點擊 General Information ,選擇 Summary Information Stream, 選擇 Require Administra

10、tive Priviledge, 將該項選擇 “Yes”。這樣設置之后,用戶就可以有管理員的權(quán)限去安裝該安裝文件了,避免用戶在安裝的時候出現(xiàn)權(quán)限不夠的問題。如圖: 更改“添加/刪除程序”面板中軟件的圖標。General Information - Add or Remove Programs - Display Icon 設置”添加/刪除程序”面板中軟件可卸載。General Information - Add or Remove Programs - Disable Change Button, Disable Remove Button, Disable Repair Button,這三個

11、至少要有一個選為“NO”,全部設為“YES”的話,則在這個面板中,對應的軟件沒有“更改/刪除”的按鈕可以點擊,即在這里就卸載不了軟件了。那就得自己去注冊表里胡搞亂改,把它搞掉了。 設置“軟件名稱”,“版本號”還有“安裝路徑”。General Information - Product Properties-NAME ,VERSION,INSTALLDIR 關于“Product Code”和“Upgrade Code”以及版本升級問題。這兩個關乎到版本升級問題,理論上,XP是不允許用戶安裝兩個相同Product Code的同一個軟件的,即時,每一個版本的安裝包,都必須有新的Product Cod

12、e。但其實,很多時候,我們在項目的時候,并不是每一次release都是一個新版本,因為有可能只是更改了一點點,不足以作為一個新版本,這是我們可以稱為是一個小版本,比如,V1.0.0-V1.0.1。我查了一下幫助文檔,找到了”Chaning the Product Code”這篇文章,里面開頭有這么一句:An update that meets the following guidelines generally does not require a change of the product code and can be handled as a small update, or if th

13、e version is to change, as a minor upgrade。(詳細請按F1,官方文檔才是王道)這句話的意思是,當update屬于 small update 或者 minor upgrade的時候,就不用更改product code,這兩者的區(qū)別在于,minor upgrade更改了 product version。除了這兩個之外,剩下的一個就是major upgrade,生成這種安裝包的時候,就需要更改product code 和 producr version。(還是不明白的請看官方幫助文檔)另外,還有個叫做 package code的東西,當你每次release一

14、個新的安裝包的時候,無論是上面哪一個,這個package code都會改變,這是IS給安裝包自動重新生成的。不用用戶區(qū)設置。這是作為每個release包的唯一區(qū)別??偟膩碚f:當你生成一個大版本,如V1.0.0-V2.0.0,這是就需要換Product Code了(方法:General Information - Product Properties-Product Code, 選中它, 左下方有個Generate GUID的按鈕,點擊它就可以重新生成,記得與Media-Release-PROJECT_ASSISTANT中的Product Code保持一致,否則在卸載的時候會出現(xiàn)問題),否則就不

15、用更改。 當小版本實現(xiàn)覆蓋安裝的時候,記得還要在Media-Upgrades-Update Windows Installer Setup中,common下選中prompt,這樣,當你覆蓋安裝的時候,系統(tǒng)就會提示你是否要覆蓋安裝,否則則會提示你,已經(jīng)安裝了 某個Product Code 的產(chǎn)品,不讓覆蓋安裝。 去掉安裝界面還有卸載界面上面的”InstallShield Wizard”等字眼。General Information - String Tables選中你采用的那個語言。在“Value”列中,將”InstallShield Wizard”這些字眼全部替換掉空格或者其它信息,自己決定。

16、(注意:安裝還有卸載的時候,進入的第一個界面還有最后退出的界面的”InstallShield Wizard”是去不掉的,因為去掉這些字眼本來就違反了IS的協(xié)議,你用別人的東西,肯定要標記一下別人公司的標志)2. 點擊 Organization 設置Feature(組件)的安裝類型在制作簡單的安裝軟件的過程中,已經(jīng)提到過類型安裝:Minimal,Custom,Typical .選擇 Setup Types, 你會發(fā)現(xiàn)無論點擊這三個中的任何一個,DefaultFeature都是必選的。3. 點擊 Application Data 如何添加我要打包的文件到工程中選擇Files and Folders

17、,點擊右邊的*INSTALLDIR這個文件夾,然后在“Source compuoters floders”選中你要加入的文件夾,右邊的“Source computers files”框欄中就顯示這些文件,把這些直接拉到“Destination computers files”中。(注意:如果發(fā)現(xiàn)拉入的文件不對,想要刪除,則不能在這里刪除,而要到Organization-Components下把文件刪除,這樣才能刪的徹底,否則會出錯。另外,加入好文件后,全選這些文件,右擊打開屬性,選擇”Always Overwrite”,這樣可以強制覆蓋安裝。)4. 點擊 System Configuratio

18、n 如何建立桌面和開始程序的快捷方式像上面圖片一樣,建完快捷方式后,記得把每個快捷方式的”Working Directory”設置為”INSTALLDIR”.否則會出錯。5. 點擊 Behavior and Logic 怎么定制安裝和卸載過程出現(xiàn)的界面點擊Install Script, IS 的installscript在安裝的時候首先調(diào)用的是OnFirstUIBefore 函數(shù),卸載的時候首先調(diào)用的是 OnMaintUIBefore 函數(shù),這兩個函數(shù)都在 Before Move Data. 而在安裝結(jié)束時調(diào)用的函數(shù)是 OnFirstUIAfter 函數(shù),而卸載結(jié)束的時候調(diào)用的是 OnMain

19、tUIAfter. 如何在卸載的時候不彈出“修改”“修復”“刪除”的界面,直接進入刪除在OnMaintUIBefore函數(shù)中,從Dlg_Start到Dlg_SdFeatureTree之間的代碼全部注釋,然后加上nType = REMOVEALL; 如何除去安裝和卸載過程中標題中的“InstallShield Wizard”字眼安裝和卸載過程中,第一個出現(xiàn)的界面和最后退出的界面標題的字眼是無法去除的,或者說我不知道怎么去吧,哈其它界面上的標題可以通過:在OnFirstUIBefore中添加:SetTitle(“安裝”+IFX_PRODUCT_NAME,0,BACKGROUNDCAPTION);

20、卸載也是一個道理,添加以上語句的函數(shù)是:OnMaintUIBefore 怎么用腳本創(chuàng)建一個卸載快捷方式,如何“完美卸載”IS自帶的建立卸載快捷方式(Project A Assistant - Application Shortcuts - Create an uninstallation shortcut)是有問題的,會出現(xiàn)卸載不完全的現(xiàn)象。解決方法是寫腳本:Install Script - After More Data - OnFirstUIAfter 中添加:STRING szFile;NUMBER nResult;szFile = UNINSTALL_STRING + “/UNINST

21、ALL”;nResult = StrFind(szFile,”.exe”);if(nResult = 0) thenStrSub(szMsg1, szFile, 0, nResult + 4);StrSub(szMsg2, szFile, nResult + 4, 200);LongPathToQuote(szMsg1, FALSE);LongPathToQuote(szMsg2, FALSE);szFile = “” + szMsg1 + “” + szMsg2; endif;AddFolderIcon(FOLDER_PROGRAMS “AliProbe”, “Uninstall AliProbe”, szFile, WINDIR, WINDIR “System32msiexec.exe”, 0, REPLACE); 然后在OnMaintUIAfter()中添加:/ 刪除開始所有程序中的AliProbe文件夾DeleteProgramFolder(“AliProbe”);/ 刪除桌面上的快捷方式STRING szItemName = “AliProbe”;STRING szProgramFolder = FOLDER_DESKTOP;DeleteFolderIcon(szProgra

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論