Installshield2010经验总结

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;

1.拷贝到system32目录下的文件,在卸载时不能自行删除?

解:使用Deletefile在脚本中删除。

2.文件不能安装到x64系统的system32下?

解:x64系统system32下放的是64位的dll,而sysWOW64下放的反倒是32位的dll,我是用xcopyfile命令拷贝到64位系统的system32目录下。

3.64位系统中system32下的dll删除不掉?

解:拷贝到x64的sys下的dll用deletefile怎么也删除不掉,到最后实在没法,请教高手,disable掉WOW64FSREDIRECTION才把dll给删掉。

4.怎么把一个feature变灰,使其状态不可选择?

解:Installation Designer --> Organization -->Features中,选中要设置的feature,在右边的属性栏中,将Required选为Yes即可,安装时可以看到该feature为选中状态,且勾选框为灰色不可更改状态,即此feature不允许用户选择,一定会安装到目标机上。

5.FeatureSelectItem函数的作用范围?

解:这个函数如果只给跟feature的名字,则该feature下的所有component和子feature都会起作用。

6.FeatureSelectItem函数和setuptype的选择冲突?

解:这两个会以谁最后设定谁就起作用,会覆盖前面的设定。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
InstallShield是一种用于创建Windows安装程序的工具。2010版是其较旧的一个版本,但仍然有很多人在使用。 首先,下载并安装InstallShield2010软件。安装完成后,打开软件并创建一个新的项目。 接下来,选择项目类型。InstallShield提供了多个项目类型,如标准安装程序、升级程序和补丁程序。选择适合你需求的项目类型。 然后,添加文件。在“文件夹”窗格中,浏览并选择你希望添加到安装程序中的文件和文件夹。你可以选择添加可执行文件、库文件、图像、文档等。 在“安装”窗格中,设置安装程序的基本信息,如安装路径、开始菜单项、桌面图标等。 在“设置”窗格中,设置安装程序的高级选项。这些选项包括是否创建桌面快捷方式、是否运行某个脚本、是否注册COM组件等。 可选的,你还可以在“用户界面”窗格中修改安装程序的界面。InstallShield提供了多种可自定义的界面模板,你可以选择其中一个或自定义一个新的。 最后,构建安装程序。点击菜单中的“生成”按钮,在弹出的对话框中选择你希望生成的安装程序类型和保存路径。点击“生成”按钮,开始构建安装程序。 构建完成后,你可以在指定的保存路径找到生成的安装程序。双击运行它,按照向导完成安装过程即可。 以上是InstallShield2010初级使用教程的简要步骤。除此之外,InstallShield还有许多其他高级功能,如自定义脚本、多语言支持等,可以根据需要进行更深入的学习和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值