目 錄
1、Application Information:程序信息
2、Installation Architecture: 安裝包結構
3、Application Files;指定安裝的文件默認目標路徑
4、Application Redistributables: 添加第三方組件
5、Application ShortCuts: 創建程序啟動的快捷方式
7、Installation Interview: 簡單的對話框選擇
8、Installation Localization: 安裝包界面語言的選擇
一、InstallShield安裝
1、 點擊[InstallShield.12.豪華完全版].installshield12.Premier.Edition.exe進行安裝
2、 到安裝過程中的組件步驟時選擇 自定義/定制
3、 在語言中選擇 簡體中方(制作了的安裝包才能是中文的,否則是英文)
二、InstallShield 破解
1、 在安裝的最后一步選擇激活,點擊下一步
2、 隨便輸入一串激活碼,如(1111111111……),點擊下一步.
3、 提示出錯,不用管,選擇電子郵件激活,下一步
4、 出現一串的序列碼,拷貝它。
5、 打開[InstallShield.12.豪華完全版].keygen.exe;粘上那串序列碼,點create^,會生成一串很長的序列碼,拷貝它。
6、 回到第四步的對話框,粘上序列碼,ok.
注:在激活的過程中,把網絡斷開
(一) 打開工程
點擊Create a new Project來創建一個工程。
IS將安裝工程根據工程的特點分了幾大類:InstallScript ;Windows Installer;Universal installer。其中,Universal這個比較好理解,大概就是用來做跨平台的安裝程序。InstallScript和Windows Installer的區別,我到是一直不是很清楚,大概意思就是如果你使用InstallScript模式是使用腳本來驅動安裝界面,使用Windows Installer則主要是使用操作系統自帶的安裝服務來驅動安裝。在每個大類里面有划分了不同的小類。這里請參考IS幫助中的說明。
注:
Project Name: 你的工程名
Location: 這個打包程序存放的路徑,一般在安裝的過程中自動創建這個目錄
(二) 工程助手頁面
利用工程助手就可完成應用程序的制作且能滿足要求(除了附加數據庫等操作)。工程助手的應用從圖中的:應用程序信息,從左往右一步步設計就可以了。
1、Application Information:程序信息
2、Installation Architecture: 安裝包結構
注:
Program files:在Installshield稱作Feature。Feature是InstallShield是基本單元。可以建多個Feature。這樣在安裝的過程中就可以選擇安裝哪些Feature。
如我們把某一些獨立的模塊放一個Feature里,把幫助文件等放一個Feature.這樣就可以定制應用程序。
3、Application Files;指定安裝的文件默認目標路徑
注:
在最頂的下拉列表框中顯示的是All Application Data,這時在路徑窗口中進行配置,就是將所有的數據的默認安裝路徑設為一樣的。
可以下拉選擇相應的Feature進行單獨的設置。
4、Application Redistributables: 添加第三方組件
單擊Objects進入界面,如下圖
5、Application ShortCuts: 創建程序啟動的快捷方式
這里可以指定應用程序的快捷方式,點擊上面的exe,右邊的兩個選擇框就可以用。
可以點擊new一個快捷方式。如下圖:
點擊open就回到了上一頁中。可以用Rename為應用程序取名
6、Application Registry: 注冊表操作
在這一步中可以添加注冊表信息,很簡單不在介紹
7、Installation Interview: 簡單的對話框選擇
注:許可文件:就是在安裝應用程序中出現一個 接受/不接受(同意/不同意)的對話框。那個對話框里有一個框框顯示的那個條款就是許可條款。可以把那些條款寫到一個txt的文本文件中,然后通過Application Files加到應用程序中來,在這里選擇它就可以了。
8、Installation Localization: 安裝包界面語言的選擇
9、Build Installation選擇安裝包的格式
IS可以提供安裝包發布的多種格式:簡單的可以這樣說IS可以根據你發行的要求將你的安裝文件打包成不同的形式。單文件形式就是把所有的安裝文件做成一個可執行文件,適合於安裝包比較小,並且經常在局域網內共享。WEB形式就是IS不但將安裝文件打包成一個單一的文件,而且還形成一個下載頁面,這種形式也是適合於小的安裝包。CD-ROM形式是我們最常用的形式,IS將我們的安裝文件按照光盤的大小進行分包,如果你的安裝包很大,超過了一張光盤的容量,你就會發現IS已經為你進行了按光盤打包,這樣的安裝文件在安裝時會提示你插入下一張安裝光盤。IS還可以按照你自己指定的大小進行分包制作。
單擊Build Installations就完成的應用程序的制作過程。
四、 設計頁
通過上面的操作,也就是通過IS的“Project Assistant”,我們可以完成一個簡單的安裝包,或者說可以完成安裝包的大體結構。下面我們通過修改這個安裝包來進一步熟悉一下IS的大體功能。緊接上面的操作,點擊下圖中紅色標記出的標簽頁。
實際上,前面我們做的這個例子是通過IS 提供的向導一步步引導我們將要安裝的文件,以及安裝信息添加到IS指定的部分,如果我們對IS熟悉了以后,我們也可以不通過向導而直接進入這個界面進行操作。在這里可以進行更詳細的設計。
(一) Installation Information
1、General Information
2、Update service
這里可以設置安裝的序列號等信息和升級信息
3、TrailWare
這里設置試軟件的試用等信息
(二) Organization
1、Setup Disign
在IS中,安裝的最新單位是Components,安裝文件是歸屬於Components的。而Componets又歸屬於Features。我們點擊Organization-->Setup Design,可以在右側窗口看到我們原來創建的Features下,IS自動為我們創建了Components,這些Components里連接了我們指定的安裝文件。
Components有一個很重要的屬性,就是目的地(Destination)。所以相同安裝路徑的文件可以在不同的Components中,但是,不同安裝路徑的文件決不能放在同一個Components中。我們點擊Setup Design下的任意一個Components(比如Help Files下的Files1),來看一下Components的具體屬性設置。這里面最關鍵的兩個屬性一個就是
Destination,設置這些文件的安裝路徑,另外一個就是Overwrite,設置當目的地存在相同文件時的覆蓋規則。
點擊Destination項后面的值一欄,出現下拉按鈕,從中選擇這個Components的默認安裝路徑。<PROGRAMFILES>表示IS的系統變量,指目標操作系統的Program Files目錄,后面的“/XXXXX”是要在安裝時創建的子目錄。如果用戶在安裝時沒有選擇定制安裝,那么安裝路徑就被默認為c:/program files/XXXX(加入目標機器的系統在C盤)。
2、setup types
這里是設置幾種安裝類型的默認安裝組件。如完全安裝時,安六裝所有的組件。
(三) Application Data
這時包括兩個部分,在上面已經說過了,不要介紹
(四) System Configuration
1、shortcouts
2、Registry
(五) Server Configuration
1、SQL Script(附加數據庫操作)
如果要附加數據庫操作,可以把數據腳本文件導到工程中來。
(1)、方法一:右擊SQL Scripts選擇 Database import wizard…,通過向導來完成。根據向導一步步完成,這里就不再介紹。
(2)、方法二:右擊SQL Scripts選擇 New SQL Connection 新建一個連接。然后右擊NewSQLConnection1選擇Insert Script File…選擇數據庫腳本文件(這個腳本文件在前面一起加入到工程中來)。
加載完成后就會在NewSQLConnection1下多了一個文件,即我們加進來的文件。如上圖。點擊那個文件,右邊窗口出現相應的信息,選擇第二個選項卡Script就可能顯示出這個文件的內容,也可以在這里修改。
(六) Behavior and Logic
(七) User Interface
(八) Media
不同的媒體發步工程已在上面講過了,這里不在重復。
(九) Additional tools
在這里可以把安裝環境集成進來。
五、腳本的簡要解釋
關於IS的腳本,我們如果只是普通的安裝的話,並不是很復雜。我們選擇的是InstallScript project這中安裝工程,IS的script起的是主線的作用。也就是說,IS是根據內部的腳本一次執行各個環節進行安裝。那么IS的腳本順序到底是怎么執行的呢?我們選擇Behavior and Logic-->InstallScript,在中間窗口,我們看到了腳本文件Setup.rul,我們點擊這個文件,發現在右側的窗口中幾乎沒有任何腳本。這不是說明目前沒有腳本,而是IS通常情況下並不顯示腳本出來,如何顯示腳本的問題我們先暫緩,先來了解一下IS是按照什么順序來執行腳本的。
安裝階段
IS有很多的固定函數,這些函數在特定的安裝階段被執行。我們在腳本窗口的上部,可以在第一個下拉列表中看到這些IS內部定義的階段。IS就是按照這樣一個階段順序執行的。而每一個階段包括了許多函數,這些函數完成特定的功能。我們選擇一個階段,在后面的下拉列表中就可以看到這個階段下的所有函數。選擇其中一個函數,在腳本的窗口中,就會顯示這個函數的具體內容。比如,這里我們階段選擇“Befor Move Data”,函數選擇“OnFirstUIBefore”,因為,對於一般的修改,這個函數是最主要的。在這個函數的腳本中,我們可以看到,函數開始處,是詳細的對這個函數在什么時候被調用執行的解釋。
這時候,如果你 選擇最初的階段“initialization”的第一個函數“OnSetTARGETDIR”,那么你會發現在OnFirstUIBefore的函數體下面,出現了OnSetTARGETDIR的函數體,這並不是說先執行OnFirstUIBefore,后執行OnSetTARGETDIR,函數的執行順序和顯示的順序無關,對於初次接觸IS的人來說,這點千萬分清楚。函數的執行順序是已經固定的。
(一) 通過腳本來實現安裝界面的增加和減少
這里我們解決的問題是去掉安裝時需要輸入用戶和公司信息的界面。
上面的安裝例子中,運行時需要輸入用戶和公司信息,在這個例子中是多余的。我們來把這個界面去掉。當然其中一個方法就是回到向導中去掉這個界面的選擇,這里我們主要是講如何在腳本中去掉它。
在3.2.3中,我們把OnFirstUIBefore的代碼顯示出來了。這個函數里主要完成的就是在正式移動文件前,依次顯示的那些對話窗口。
調用指定的窗體
如果點擊“返回”按鈕,則退到Dlg_sdregisterUser處。
在IS中,以Sd開頭命名的函數一般代表窗口函數。查看全部的窗口樣式,一種方法就是在User interface中點擊Dialogs進行查看。
在OnFirstUIBefore函數中,我們找到如下腳本:Dlg_SdregisterUser這段腳本就是實現調用SdRegisterUser對話框,並把用戶在界面輸入的用戶名和公司名放在了szName和szCompany變量中。我們要去掉這個對話框,在確保這個對話框所保存的變量值沒有被其他函數調用后,首先直接注釋掉Dlg_SdregisterUser這段代碼,就可以實現去掉這個對話框;其次,特別強調的是,它的下一個對話框中有一個返回上一步按鈕,見上圖中的標記,這里,我們要把調轉語句(goto)后面所指定的Dlg_SdregisterUser,改為上一個對話框Dlg_SdLicense2。