摘要:首先要感谢网友爱新觉罗.奕,是他首先将此方案发布出来,详细见AppInstall网站中《单MSI引导多MSI安装和卸载》一章,http://www.appinstall.cn/viewthread.php?tid=840&extra=page%3D1。有关安装包嵌套调用,之前也琢磨过很多中办法,IntallScript,InstallScript MSI,MSI各种类型互相嵌套,但惟独发现MSI包无法嵌套,原因很简单,Windows Installer只接受单实例安装。解决方案:1. 首先创建主Basic MSI工程,设计组织你的安装程序。2. 【Installation Design 阅读全文
InstallShield - Kevin Wan博客文章索引列表(001~100)
2010-11-23 01:32 by Kevin.Wan, 3576 阅读, 1 推荐, 收藏, 编辑
摘要:INFO:InstallAnywhere的Enterprise版本和Standard版本的主要区别(2010-11-19 17:06) HOWTO:InstallShield中添加一个卸载快捷方式或设置反卸载 - DISK1TARGET(2010-11-19 13:54) HOWTO: InstallShield中通过修改注册表关闭Vista/Windows 7的UAC(2010-11-18 14:20) HOWTO:InstallScript工程中如何在用户协议界面中默认为接受协议(2010-11-1... 阅读全文
HOWTO:卸载InstallShield Professional版本之后,Visual Studio编译报错"An error occurred while validating. HRESULT='80040155'"
2010-11-22 16:56 by Kevin.Wan, 1509 阅读, 0 推荐, 收藏, 编辑
摘要:该问题会在发生在使用InstallShield 7.0 Developer,以及InstallShield 12 Professional版本用户身上。发生InstallShield 7.0影响Visual Studio .Net(VS 2003),InstallShield 12影响Visual Studio 2005的案例。原因是InstallShield在卸载的时候,反注册了Visual Studio的一些关键文件。具体解决办法:遇到上述的客户,可以将下面内容保存到.reg文件中,然后导入到注册表中Code highlighting produced by Actipro CodeHig 阅读全文
INFO:在InstallShield中修改安装包压缩.cab包的大小
2010-11-21 00:48 by Kevin.Wan, 3088 阅读, 0 推荐, 收藏, 编辑
摘要:如果我们用InstallShield打包一个数据非常大的安装包(Basic MSI和InstallScript MSI工程类型),默认情况下安装包会产生多个.cab文件,这里简单说明我们如何修改安装包中.cab文件的大小。首先,有个信息大家需要知道,单个.cab文件最大不能超过2GB。下面,我们具体来说如何修改默认.cab的大小:在InstallShield安装目录下找到Settings.xml文件,具体路径是: 英文版 - InstallShield安装路径\Support\0409 日文版 - InstallShield安装路径\Support\0411修改之前先备份一份Setti... 阅读全文
INFO:InstallAnywhere的Enterprise版本和Standard版本的主要区别
2010-11-19 17:06 by Kevin.Wan, 2525 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。InstallAnywhere是一款支持跨平台安装的打包工具,可以在一个工程里管理,针对多个平台的安装包,支持Windows,Linux, Mac OS X, Solaris,AIX, HP-UX以及IBM iSeries平台。InstallAnywhere目前开发版本是InstallAnywhere 2010,分Enterprise和Standard两个版本,它们的主要区别:1)支持语言多少不同:Standard支持9种语言(具体包括Simplified Chinese,Traditional Chinese,En 阅读全文
HOWTO:InstallShield中添加一个卸载快捷方式或设置反卸载 - DISK1TARGET
2010-11-19 13:54 by Kevin.Wan, 3650 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。今天讨论的两个功能用到一个系统变量DISK1TARGET,InstallShield 2010中帮助里是这么解释的(DISK1TARGET:This system variable contains the path to the folder in which copies of certain of the installation's files (such as the compiled script file) are placed to enable maintenance installatio 阅读全文
HOWTO: InstallShield中通过修改注册表关闭Vista/Windows 7的UAC
2010-11-18 14:20 by Kevin.Wan, 2465 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。这是一段示例代码,仅供参考。此问题不会彻底解决安装包在Vista/Windows 7上的权限提升问题,至少对本次安装包是无效的。另外,我们也不建议某个应用程序的安装包代替用户决定UAC是否关闭。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->functionOnBegin() STRINGszKey,szName,szValue; NUMBERnType,nSize 阅读全文
HOWTO:InstallScript工程中如何在用户协议界面中默认为接受协议
2010-11-18 13:41 by Kevin.Wan, 2529 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。老实说,这个方法是各位网友共享的,之前我自己没想到过这个办法。InstallScript工程中,截止目前,用户协议界面有六个对话框可用,它们分别是:SdLicense,SdLicense2,SdLicenseEx,SdLicense2Ex,SdLicenseRtf和SdLicense2Rtf。我们修改的方法是利用上述对话框中的一个布尔类型的参数,具体位置各函数不一致(其中SdLicense和SdLicenseRtf没有此参数)。在InstallShield 2010中,修改方法如下:- SdLicense其实调用的是 阅读全文
HOWTO:InstallShield中如何调用批处理文件
2010-11-18 09:51 by Kevin.Wan, 7311 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在InstallShield中调用批处理文件其实是安装打包中很常用的一种手段,通过批处理启动服务,进行数据库初始配置等等。在实际操作中,针对不同工程类型,对批处理的调用还是有很多疑惑困扰着大家,撰写此文希望能帮助到那些被困扰的打包开发人员。这里假设我们的需求是要启动安装路径下的批处理文件Sample.bat。InstallScript工程:这种类型调用批处理相对简单,通过LaunchAppAndWait函数进行调用,下面是简单示例:Code highlighting produced by Actipro CodeH 阅读全文
HOWTO:InstallShield中如何判断IIS是否安装以及安装的版本
2010-11-16 23:41 by Kevin.Wan, 3272 阅读, 1 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。近期被问及在InstallShield的脚本中如何判断IIS(Internet Information Services)是否被安装,或者是判断目标机上安装的IIS版本。我们这里是通过读取注册表的方式来进行判断。对于Basic MSI或InstallScript MSI工程,还可以通过IIS_VERSION属性进行判断,大家有兴趣可以去琢磨一下。下面是通过注册表方式判断的示例代码(我们在事件响应函数OnAppSearch进行判断)Code highlighting produced by Actipro CodeHi 阅读全文
INFO:InstallShield中Basic MSI工程类型如何调用InstallScript脚本
2010-11-16 11:40 by Kevin.Wan, 5740 阅读, 6 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。这是一个Basic MSI基础知识,有不少网友问,所以我再啰嗦一遍。A. 首先在Installation Designer/Behavior and Logic/InstallScript视图中,选中Files点击鼠标右键选择“New Script File”,默认会生成一个setup.rul的文件,并有一个MyFunction的函数声明和。B. 之后我们在MyFunction函数内添加一行代码:MessageBox("MyFunction", INFORMATION);当然,你也可以修改函数名, 阅读全文
HOWTO:在InstallShield脚本中打开一个URL链接
2010-11-16 10:51 by Kevin.Wan, 2719 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。之前网络中有建议采用如下方法打开一个URL链接:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->LaunchAppAndWait("http://www.cnblogs.com/installshield","",LAAW_OPTION_WAIT);但验证发现无法打开,所以建议用另外一种方式打开一个URL链接:Code hig 阅读全文
HOWTO:InstallShield中如何制作静默安装包-IntallScript或InstallScript MSI工程类型
2010-11-15 14:41 by Kevin.Wan, 6116 阅读, 2 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。这篇文章,拖欠大家很久了,之前一直答应朋友们写一篇有关静默安装的文章,结果是一拖再拖。静默安装包(Silent Installation):所谓静默安装包,有这么几个特点:安装过程没有界面;安装过程不需要用户进行任何输入;也不会在Taskbar中显示一个安装程序的Icon。如何创建一个静默安装包:1. 静默安装包的制作是在主程序完成后进行的,先录制静默脚本文件,通过在命令行运行安装包Setup.exe 给入参数/r,这时会启动的依然是有界面操作的安装,按照正常操作方式完成安装。2. 完成上一步之后,会在系统的Wind 阅读全文
HOWTO:InstallShield中如何通过脚本获取“My Documents”路径
2010-11-13 17:37 by Kevin.Wan, 2769 阅读, 0 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。如果需要获取当前用户的“我的文档”路径,可以通过以下脚本代码获取:#define CSIDL_PERSONAL 0x0005 // for My Documents prototype NUMBER SHFolder.SHGetFolderPathA(HWND, NUMBER, NUMBER, NUMBER, BYREF STRING);脚本中通过以下代码调用:SHFolder.SHGetFolderPathA(NULL, CSIDL_PERSONAL, NULL, 0, szMyDocumentsFolder ). 阅读全文
INFO:InstallShield工程中关于.NET依赖项的编译扫描警告
2010-11-10 16:18 by Kevin.Wan, 3418 阅读, 1 推荐, 收藏, 编辑
摘要:版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在编译InstallShield工程时,如果出现大量的类似警告信息 “ISDEV:warning -6248: Could not find dependent file... of component...”如果你可以确定所打包的应用程序依赖没有问题,可以通过以下方法消除警告:1. 在Installation Designer/Organization/Components视图中,找到相应的Component。2. 在Component的.NET Settings分组中,将属性.NET Scan at Build由 阅读全文