1、 問題描述:采用何種安裝模式?
實現(xiàn)方法:如果對用戶界面等自定義要求不高的話,建議用Basic Msi Project,否則用InstallScript MSI Project。
2、 問題描述:安裝后快捷方式為亂碼。
實現(xiàn)方法:將簡體中文設(shè)為默認(rèn)安裝語言后刪除English前的勾。
操作步驟:在Installation Designer頁面中Installation Information-General Information->String Tables右擊Chinese(simplify)在彈出的快捷菜單中選擇Make default,回到Project Assistant頁面的相應(yīng)處去掉English前的勾。
3、 問題描述:安裝界面的中文全顯示為亂碼。
產(chǎn)生原因:之前已編譯過英文的安裝包。
實現(xiàn)方法:在Bulid菜單中的Release Wizard中修改設(shè)置再重新編譯即可。
4、 問題描述:如何修改系統(tǒng)默認(rèn)的安裝文件夾?
實現(xiàn)方法:在Information-Product Properties中INSTALLDIR右側(cè)的文本框中單擊,再單擊文本框右側(cè)的 ,在彈出的Set INSTALLDIR對話框中新建目標(biāo)文件夾,點擊OK后,再次點擊 選擇剛才建好的那個文件夾。點OK 即可將默認(rèn)的安裝目錄修改。
5、 問題描述:怎么在開始程序中加上卸載的快捷方式。
實現(xiàn)方法:在Project Assistant頁面的Appication Shotcuts中單擊左側(cè)的Create an unlinstallation shotcut。
6、 問題描述:安裝時怎么使控件自注冊。
實現(xiàn)方法:在Project Assistant頁面的中右側(cè)選中控件,右擊選擇Properties在彈出的對話框中勾上Self Register復(fù)選框。
7、 問題描述:怎么實現(xiàn)在卸載時有的控件不被刪除。
實現(xiàn)方法:直接單擊Installation Designer頁面,選中Application Data下的Files and Folders,在Destination computer’s folders中選中不要被卸載的組件,右擊選擇Properties在彈出的對話框中勾上Permanent復(fù)選框(若沒有復(fù)選框可以在organiztion處的setup design處設(shè)置 )
8、 問題描述:怎么在Basic MSI Project安裝工程中實現(xiàn)安裝后運行指定的安裝程序。
實現(xiàn)方法:首先在Installation Designer頁面的Behavior and Logic中單擊InstallScript,右擊Files在彈出的快捷菜單中選擇New Script file,然后新建相關(guān)函數(shù)。例如:
#include "ifx.h"
export prototype RunSetIIS(HWND);
function RunSetIIS(hMSI)
STRING svResult;
begin
if(FindFile(INSTALLDIR,"設(shè)置IIS.exe",svResult)=0) then
LaunchAppAndWait (INSTALLDIR^"設(shè)置IIS.exe","AUTORUN",WAIT);
endif;
end;
然后再在Behavior and Logic中單擊Custom Actions, 右擊Custom Actions在彈出的快捷菜單中選擇Custom Action Wizard在Action Type中選擇Run InstallScript code,在Insert into Sequence中的Install Execute Sequence處選擇After ISSelRegisterFinalize或者After InstallFinalize都行,其余按向?qū)崾静僮鳌?/p>
9、 問題描述:怎么樣在安裝或卸載過程中停止或開啟、重啟有關(guān)服務(wù)。
實現(xiàn)方法:大體操作同8。相關(guān)函數(shù)LaunchAppAndWait, 以停止win自帶的web服務(wù)為例:
#include "ifx.h"
export prototype StopWebservice(HWND);
function StopWebservice(hMSI)
begin
LaunchAppAndWait("","net stop w3svc"+"/S",WAIT);
end;
10、問題描述:怎么樣在卸載后刪除殘留文件。
實現(xiàn)方法:大體操作同8。相關(guān)函數(shù)DeleteDir, DeleteFile,注意不要對INSTALLDIR文件夾進行整個刪除,以防安裝在根目錄時這樣的刪除操作會造成刪除整個盤符的所有數(shù)據(jù)。
11、問題描述:怎么樣在安裝完成之后創(chuàng)建新文件夾。
實現(xiàn)方法:大體操作同8。相關(guān)函數(shù)CreateDir。
12、問題描述:怎么使安裝包只一個exe文件。
實現(xiàn)方法:在Bulid菜單中單擊Release Wizard,在Media Type對話框處選擇Network inage-在Release Configuartion對話框處選中Compress all files,在Windows Installer Location,Installscript Engine處選中Extract engine form Setup.exe,其余按向?qū)崾静僮鳌?/p>
13、問題描述:安裝時提示有的文件正在使用不能被覆蓋,怎么解決。
實現(xiàn)方法:單擊Installation Designer頁面,選中Application Data下的Files and Folders,在Destination computer’s folders處右擊選中show compenents,再選中不要被覆蓋的任意一個components,右擊選擇Properties在彈出的對話框中勾上Never Overwrite復(fù)選框。或是直接點擊Organazation處的components處選擇即可.
14、問題描述:怎么讓用戶選擇安裝路徑。
實現(xiàn)方法:在project Assistant中installationinterview 處,將第三行的yes選上。
15、問題描述:怎么修改對話框左側(cè)和上部的logo圖片。
實現(xiàn)方法:在Project Assistant->Installation Interview:在右上角的More options處有個Use custom images on dialogs
16、問題描述:怎么在初始化安裝過程時顯示公司的logo作為閃屏。
實現(xiàn)方法:在Installation Designer頁面的Behavior and Logic->Support Files->Splash Screen處的Language Independent單擊,在files列表處右鍵Insert files,選取一幅bmp圖片添加就是。
17、問題描述:怎么使用腳本在安裝過程中調(diào)用另一個MSI安裝程序。
實現(xiàn)方法:以下是函數(shù)片段
string szCommand,szCmdLine;
begin
szCommand = WINSYSDIR^"msiexec.exe";
LongPathToShortPath(szCommand);
szCmdLine =TARGETDIR^"msxmlchs.msi";
LongPathToShortPath(szCmdLine);
SdShowMsg("正在安裝msxml,請稍候...",TRUE);
Delay(5);
if (LaunchAppAndWait( szCommand ,"/i"+szCmdLine,WAIT) < 0) then
MessageBox("數(shù)據(jù)文件出現(xiàn)錯誤",WA RNING);
endif;
18、問題描述:怎么設(shè)置背景圖
實現(xiàn)方法:以下是函數(shù)片段
Enable( BACKGROUND );
GetExtents ( nvDx , nvDy);
if(nvDx=800) then
PlaceBitmap ( SUPPORTDIR ^ "bbrd1.bmp" , 1 , 800 , 600 ,CENTERED);
elseif(nvDx=1024) then
PlaceBitmap ( SUPPORTDIR ^ "bbrd2.bmp" , 1 ,1024 , 768 ,CENTERED);
elseif(nvDx=1152) then
PlaceBitmap ( SUPPORTDIR ^ "bbrd3.bmp" , 1 , 1152 , 864 ,CENTERED);
endif;