前面介紹的都是如何發布“.msi”格式的安裝文件。但是,對于很多軟件來說,其安裝包采用的未必是該格式,而是最普通的EXE格式。如何發布這些安裝包呢?這就需要創建專門的ZAP文件來實現。
我們以發布“weezo_setup.exe”為例,先在軟件發布點“\cy1fabusoftware” 路徑下創建名為“weezo”的文件夾,將上述安裝文件復制進來。之后使用記事本在其中創建名為“weezo.zap”的文件,其內容第一行為“[Application]”,第二行為“FriendlyName="實例程序信息"”,可以設置關于該軟件的說明信息。第三 行 為“SetupCommand="weezo_setup.exe "”,指 名安裝文件具體位置,這里因為已經將復制到發布點路徑中,而且和“.zap”文件同一路徑,所以直接輸入安裝文件名即可。否則的話,需要設置完整的路徑信息,例如“\cy1fabusoftwareweezo weezo_setup.exe”等。
保存該ZAP文件后,以系統管理員身份登錄到域控制器,在組策略管理器中選擇針對上述OU的GPO項目,在其右鍵菜單上點擊“編輯”項,在打開的組策略管理編輯器窗口選擇“用戶配置→軟件設置→軟件安裝”項,在其右鍵菜單上點擊“新建→數據包”項,在彈出窗口右下角的列表中選擇“ZAW早期版本應用程序數據包(*.zap)”項,在上述發布點選擇“weezo.zap”文件。點擊“打開”按鈕,在部署軟件窗口中選擇“已發布”項,點擊確定按鈕,完成發布操作。
當對應組織單元內的用戶登錄到域環境后,必須以系統管理員權限進行安裝操作。對于Windows 7等新系統來說,會彈出認證窗口,輸入系統管理員賬戶名和密碼后,可以執行安裝操作。如果是XP等老用戶,是無法直接安裝的,必須將對應的域賬戶添加到Domain Admin組后,才可以執行安裝操作。方法是,在域控制器上打開Active Directory管理中心程序,在其中選擇對應的的域賬戶,在其右鍵菜單中點擊“添加到組”項,將其添加到Domain Admin組中即可。
采用這種方法雖然可以發布軟件,但是存在一些限制。例如,只能發布給用戶,無法分配給用戶和計算機。發布的安裝項目不具備自動修復,自動安裝等功能,而且其安裝的權限受到很大的限制,只有具備系統管理員權限方可。當32位的ZAP安裝程序在64位環境中是無法運行和管理的。
當然,我們也可以采取變通的方式來解決問題,例如將EXE文件轉換成MSI文件,就可以輕松發布軟件了。例如,可以使用Advanced Install,WinInstall Discover Wizard,EMCO MSI Package Builder等軟件,來實現上述轉換操作。這里以EMCO MSI Package Builder進行說明。在其主窗口(如圖6)右側點擊“Monitor Installation”項,在向導界面中點擊“Next”按鈕,在下一步窗口中選擇“Automated Monitoring”項,執行自動監控操作。點擊“Next”按鈕,在彈出窗口中選擇EXE等格式的安裝文件,在安裝設置窗口中可以輸入關于該程序的參數信息。

圖6 EMCO MSI Package Builder主界面
注意,您可以同時添加多個安裝程序。將其統一封裝到單個MSI包中。之后在監控安裝窗口中點擊“Next”按鈕,設置關于目標MSI包的具體信息,包括存放路徑、產品信息、開發者、語言格式、數字簽名等內容。
在下一步窗口中點擊“Finish”按鈕,執行選定軟件的安裝操作。在此期間,EMCO MSI Package Builder可以對系統進行全面監控,當運行其它格式的安裝文件或者程序時,EMCO MSI Package Builder可以在后臺對其一舉一動進行全面記錄,當安裝完畢后,點擊工具欄上的 “Create MSI Package”按鈕,在彈出窗口中可以填充關于該安裝包的更多信息,點擊“Finish”按鈕即可生成所需的MSI安裝文件了。