實現方法:如果對用戶界面等自定義要求不高的話,建議用Basic Msi Project,否則用InstallScript MSI Project。
2、?? 問題描述:安裝后快捷方式為亂碼。
實現方法:將簡體中文設為默認安裝語言后刪除English前的勾。
操作步驟:在InstallationDesigner頁面中Installation Information-General Information->StringTables右擊Chinese(simplify)在彈出的快捷菜單中選擇Make default,回到ProjectAssistant頁面的相應處去掉English前的勾。
3、?? 問題描述:安裝界面的中文全顯示為亂碼。
產生原因:之前已編譯過英文的安裝包。
實現方法:在Bulid菜單中的Release Wizard中修改設置再重新編譯即可。
4、?? 問題描述:如何修改系統默認的安裝文件夾?
實現方法:在Information-ProductProperties中INSTALLDIR右側的文本框中單擊,再單擊文本框右側的 ,在彈出的SetINSTALLDIR對話框中新建目標文件夾,點擊OK后,再次點擊 選擇剛才建好的那個文件夾。點OK 即可將默認的安裝目錄修改。
5、?? 問題描述:怎么在開始程序中加上卸載的快捷方式。
實現方法:在Project Assistant頁面的Appication Shotcuts中單擊左側的Create an unlinstallation shotcut。
6、?? 問題描述:安裝時怎么使控件自注冊。
實現方法:在Project Assistant頁面的中右側選中控件,右擊選擇Properties在彈出的對話框中勾上Self Register復選框。
7、?? 問題描述:怎么實現在卸載時有的控件不被刪除。
實現方法:直接單擊InstallationDesigner頁面,選中Application Data下的Files and Folders,在Destinationcomputer’sfolders中選中不要被卸載的組件,右擊選擇Properties在彈出的對話框中勾上Permanent復選框(若沒有復選框可以在organiztion處的setup design處設置 )
8、?? 問題描述:怎么在Basic MSI Project安裝工程中實現安裝后運行指定的安裝程序。
實現方法:首先在Installation Designer頁面的Behavior and Logic中單擊InstallScript,右擊Files在彈出的快捷菜單中選擇New Script file,然后新建相關函數。例如:
#include "ifx.h"
export prototype RunSetIIS(HWND);
function RunSetIIS(hMSI)
?? STRING svResult;
begin????
?????? if(FindFile(INSTALLDIR,"設置IIS.exe",svResult)=0) then
?????? LaunchAppAndWait (INSTALLDIR^"設置IIS.exe","AUTORUN",WAIT);
?? endif;??
end;
然后再在Behavior andLogic中單擊Custom Actions, 右擊Custom Actions在彈出的快捷菜單中選擇Custom ActionWizard在Action Type中選擇Run InstallScript code,在Insert intoSequence中的Install Execute Sequence處選擇After ISSelRegisterFinalize或者AfterInstallFinalize都行,其余按向導提示操作。
9、?? 問題描述:怎么樣在安裝或卸載過程中停止或開啟、重啟有關服務。
實現方法:大體操作同8。相關函數LaunchAppAndWait, 以停止win自帶的web服務為例:
#include "ifx.h"
export prototype StopWebservice(HWND);
function StopWebservice(hMSI)
begin
?? LaunchAppAndWait("","net stop w3svc"+"/S",WAIT);??
end;
10、問題描述:怎么樣在卸載后刪除殘留文件。
實現方法:大體操作同8。相關函數DeleteDir, DeleteFile,注意不要對INSTALLDIR文件夾進行整個刪除,以防安裝在根目錄時這樣的刪除操作會造成刪除整個盤符的所有數據。
11、問題描述:怎么樣在安裝完成之后創建新文件夾。
實現方法:大體操作同8。相關函數CreateDir。
12、問題描述:怎么使安裝包只一個exe文件。
實現方法:在Bulid菜單中單擊ReleaseWizard,在Media Type對話框處選擇Network inage-在ReleaseConfiguartion對話框處選中Compress all files,在Windows InstallerLocation,Installscript Engine處選中Extract engine form Setup.exe,其余按向導提示操作。
13、問題描述:安裝時提示有的文件正在使用不能被覆蓋,怎么解決。
實現方法:單擊InstallationDesigner頁面,選中Application Data下的Files and Folders,在Destinationcomputer’s folders處右擊選中showcompenents,再選中不要被覆蓋的任意一個components,右擊選擇Properties在彈出的對話框中勾上NeverOverwrite復選框。或是直接點擊Organazation處的components處選擇即可.
?
14、問題描述:怎么讓用戶選擇安裝路徑。
實現方法:在project Assistant中installationinterview 處,將第三行的yes選上。
?
15、問題描述:怎么修改對話框左側和上部的logo圖片。
實現方法:在Project Assistant->Installation Interview:在右上角的More options處有個Use custom images on dialogs
16、問題描述:怎么在初始化安裝過程時顯示公司的logo作為閃屏。
實現方法:在InstallationDesigner頁面的Behavior and Logic->Support Files->SplashScreen處的Language Independent單擊,在files列表處右鍵Insert files,選取一幅bmp圖片添加就是。
17、問題描述:怎么使用腳本在安裝過程中調用另一個MSI安裝程序。
實現方法:以下是函數片段
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("數據文件出現錯誤",WA RNING);??????
?? endif;
18、問題描述:怎么設置背景圖
?????? 實現方法:以下是函數片段
???? 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;
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
