[转]InstallShield Basic MSI工程常见问题解答

原创 2007年09月18日 18:35:00

1、  问题描述:采用何种安装模式?

实现方法:如果对用户界面等自定义要求不高的话,建议用Basic Msi Project,否则用InstallScript MSI Project。

2、  问题描述:安装后快捷方式为乱码。

实现方法:将简体中文设为默认安装语言后删除English前的勾。

操作步骤:在Installation Designer页面中Installation Information-General Information->String Tables右击Chinese(simplify)在弹出的快捷菜单中选择Make default,回到Project Assistant页面的相应处去掉English前的勾。

3、  问题描述:安装界面的中文全显示为乱码。

产生原因:之前已编译过英文的安装包。

实现方法:在Bulid菜单中的Release Wizard中修改设置再重新编译即可。

4、  问题描述:如何修改系统默认的安装文件夹?

实现方法:在Information-Product Properties中INSTALLDIR右侧的文本框中单击,再单击文本框右侧的 ,在弹出的Set INSTALLDIR对话框中新建目标文件夹,点击OK后,再次点击 选择刚才建好的那个文件夹。点OK 即可将默认的安装目录修改。

5、  问题描述:怎么在开始程序中加上卸载的快捷方式。

实现方法:在Project Assistant页面的Appication Shotcuts中单击左侧的Create an unlinstallation shotcut。

6、  问题描述:安装时怎么使控件自注册。

实现方法:在Project Assistant页面的中右侧选中控件,右击选择Properties在弹出的对话框中勾上Self Register复选框。

7、  问题描述:怎么实现在卸载时有的控件不被删除。

实现方法:直接单击Installation Designer页面,选中Application Data下的Files and Folders,在Destination computer’s folders中选中不要被卸载的组件,右击选择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 and Logic中单击Custom Actions, 右击Custom Actions在弹出的快捷菜单中选择Custom Action Wizard在Action Type中选择Run InstallScript code,在Insert into Sequence中的Install Execute Sequence处选择After ISSelRegisterFinalize或者After InstallFinalize都行,其余按向导提示操作。

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菜单中单击Release Wizard,在Media Type对话框处选择Network inage-在Release Configuartion对话框处选中Compress all files,在Windows Installer Location,Installscript Engine处选中Extract engine form Setup.exe,其余按向导提示操作。

13、问题描述:安装时提示有的文件正在使用不能被覆盖,怎么解决。

实现方法:单击Installation Designer页面,选中Application Data下的Files and Folders,在Destination computer’s folders处右击选中show compenents,再选中不要被覆盖的任意一个components,右击选择Properties在弹出的对话框中勾上Never Overwrite复选框。或是直接点击Organazation处的components处选择即可.


14、问题描述:怎么让用户选择安装路径。

实现方法:在project Assistant中installationinterview 处,将第三行的yes选上。


15、问题描述:怎么修改对话框左侧和上部的logo图片。

实现方法:在Project Assistant->Installation Interview:在右上角的More options处有个Use custom images on dialogs

16、问题描述:怎么在初始化安装过程时显示公司的logo作为闪屏。

实现方法:在Installation Designer页面的Behavior and Logic->Support Files->Splash Screen处的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、问题描述:怎么设置背景图
      实现方法:以下是函数片段

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;
 

相关文章推荐

Installshield Basic MSI工程常见问题解答:

Installshield Basic MSI工程常见问题解答: 2010-03-27 15:17 325人阅读 评论(0) 收藏 举报 Basic MSI工程常见问题解答...

欧陆590常见问题解答

  • 2015年08月13日 01:19
  • 389KB
  • 下载

InstallShield中Basic MSI工程类型如何调用InstallScript脚本

版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。  这是一个Basic MSI基础知识,有不少网友问,所以我再啰嗦一遍。 A. 首先在Installation Des...
  • wdt3385
  • wdt3385
  • 2012年08月29日 14:11
  • 991

PLL设计中常见问题解答ADI

  • 2017年03月24日 16:31
  • 6.33MB
  • 下载

套磁常见问题解答FAQ(转)

http://www.sharewithu.com/thread-486173-1-1.html原文地址 正文: 又是一年申请季。很多版友即将结束各种考试开始全面的申请事宜。这其中,选校和套磁...

Vb初学者常见问题解答

  • 2013年07月07日 15:22
  • 134KB
  • 下载

关于Installshield里一些常见问题的解答—艾泽拉斯之海洋女神出品

Q: 如何替换setup.exe的图标? A: 这不是一个推荐的操作,因为可能会引起不可预见的错误,而且IS没有开放这个接口。如果你坚持要这么做,可以使用第三方软件比如ExeScope来进行图标...
  • hustypf
  • hustypf
  • 2012年06月21日 09:31
  • 3223
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[转]InstallShield Basic MSI工程常见问题解答
举报原因:
原因补充:

(最多只允许输入30个字)