InstallShield自訂安裝介面__InstallShield

來源:互聯網
上載者:User
前言:
對於一些InstallShield使用者或企業,對於安裝包介面除了採用預設的安裝對話方塊外,有時可能會需要利用安裝介面這個平台進行產品或企業形象宣傳,自訂安裝對話方塊。下面將就此需求展示如何在InstallScript,Basic MSI或InstallScript MSI工程中如何自訂安裝過程中的對話方塊。
安裝對話方塊類型:
安裝程式的安裝介面分外部對話方塊和內部對話方塊兩類。外部對話方塊是指安裝前和安裝結束部分,典型的就是歡迎和結束對話方塊;在歡迎和結束對話方塊之間的其他對話方塊稱之為內部對話方塊。
外部對話方塊樣本(如下圖):

內部對話方塊樣本(如下圖)

下面將具體的工程類型介紹如何自訂對話方塊。
InstallScript工程類型
內部對話方塊:

在InstallScript工程中,可以通過函數DialogSetInfo指定內部對話方塊中顯示的資源檔(只支援bmp格式),具體操作如下:
首先需要將bmp格式(尺寸大小為499*58像素點)檔案添加到Support Files/Language Independent目錄下。如下圖


之後在事件響應函數OnBegin中添加如下代碼:
DialogSetInfo(DLG_INFO_ALTIMAGE, SUPPORTDIR ^ "Bear_Banner.bmp", TRUE);
重新編譯釋放之後,內部對話方塊中將顯示我們自訂的資源,如下圖:



外部對話方塊:
前邊在事件響應函數OnBegin中調用函數DialogSetInfo的圖片資源,嵌入顯示到外部對話方塊中,效果如下圖:

如果不需要這張插入的圖片,可以直接在Dialog視圖中,將相應對話方塊中名為 ControlId_1200的控制項直接刪除就可以。
在InstallScript工程中,每個外部對話方塊中都有一個名為 ControlId_551的位元影像控制項,其屬性File Name指向一位元影像檔案(預設大小為220*370像素):
<ISProductFolder>\Script\Dialogs\BitmapId_103.bmp
可以直接在每個外部對話方塊中重新指定自訂的位元影像檔案。
之後重新編譯,效果如下圖:

涉及修改的外部對話方塊包括Welcome,SdWelcome,SdFinish,SdFinishReboot,SdFinishUpdate(Ex),SdFinishUpdateReboot,以及SdPatchWelcome,當然上述對話方塊可以根據需要有選擇的進行修改。
這樣,我們就完成了InstallScript工程的自訂對話方塊資源的修改。
雖然我們完成了內部和外部對話方塊的自訂,但細心的使用者會發現,在安裝初始化時,依然顯示的InstallShield的資源檔,這是因為這部分內容是在指令碼代碼運行之前顯示的,所以使用者無法修改。不過,我們可以在Release視圖中,將屬性Small Initialization Dialog的值設為Yes,現在在安裝初始化時將顯示小的對話方塊,不會載入顯示標準的位元影像,修改方式見下圖:


Basic MSI工程類型:
內部對話方塊:

在Basic MSI工程內部對話方塊中,有一個稱作“Banner”的位元影像控制項,該控制項的File Name屬性指向一個位元影像檔案(499*58的JPEG,副檔名為ibd)。預設指向:
<ISProductFolder>\Redist\Language Independent\OS Independent\IsDialogBanner.ibd
可以在Dialog視圖中,對每個內部對話方塊進行修改,包括AdminChangeFolder,AdminNetworkLocation,CustomerInformation,CustomSetup,CustomSetupTips,DatabaseFolder,DestinationFolder,DiskSpaceRequirements,FilesInUse,InstallChangeFolder,LicenseAgreement,MaintenanceType,MsiRMFilesInUse,OutOfSpace,ReadyToInstall,ReadyToRemove,SetupInterrupted,SetupProgress,SetupType。
修改效果如下:

外部對話方塊:
在Basic MSI工程外部對話方塊中,有一個稱作“Image”的位元影像控制項,該控制項的File Name屬性指向一個位元影像檔案(499*312的JPEG,副檔名為ibd)。預設指向:
<ISProductFolder>\Redist\Language Independent\OS Independent\ IsDialogBitmap.ibd
可以在Dialog視圖中,對每個外部對話方塊進行修改,包括AdminWelcome, InstallWelcome, MaintenanceWelcome,PatchWelcome, SetupCompleteError,SetupCompleteSuccess,SetupInitialization,SetupInterrupted,SetupResume,SplashBitmap。
修改後效果如下圖:

對於安裝包初始化介面中出現的問題,處理方式與InstallScript工程方式相同,選擇Small Initialization Dialog。
注意:對於Basic MSI工程,還有一個更方便的方式自訂介面,這就是Project Assistant,在Project Assistant的Installation Localization介面的左上方,有一個Use custom images on dialogs。通過它可以直接設定自訂的介面。

InstallScript MSI工程類型:
InstallScript MSI工程類型是間於InstallScript和Basic MSI直接的一種工程類型,其對話方塊部分處理方式與InstallScript相同,所以我們可以參考InstallScript工程進行設定。
外部對話方塊效果如下:

內部對話方塊效果如下:

對於安裝包初始化介面中出現的問題,處理方式前兩種工程類型相同,選擇Small Initialization Dialog

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.