摘要:试用InstallShield 2012最新版本的用户注意,在InstallScript工程中添加一个Object会报错,提示Object无法插入。原因是次功能模块需要的一个DLL没有被正确注册,可通过手动注册该DLL来解决:Regsvr32.exe "<InstallShield安装目录>\System\ismk18.dll" 阅读全文
InstallShield 2012新功能试用(1)- Suite Project
2011-08-25 10:34 by Kevin.Wan, 1175 阅读, 0 推荐, 收藏, 编辑
摘要:今天开始陆续介绍InstallShield 2012版本的新增功能和增强功能。InstallShield 2012的第一个亮点就是提供了可以将多个子安装包封装到一个安装包的解决方案,在工程类型中新增加一个Suite Project的工程类型(见下图)。所谓Suite Project,就是将不同类型的子安装包集成到一个统一的安装包套件中,子安装包的形式可以是:可执行文件 (.exe) - 包括了基于Windows Installer和非Windows Installer的各种安装包Windows Installer安装包(.msi)Windows Installer 补丁包(.msp)随着产品线 阅读全文
Basic INFO: InstallShield 2012安装过程
2011-08-23 17:57 by Kevin.Wan, 1673 阅读, 0 推荐, 收藏, 编辑
摘要:InstallShield 2012安装界面发生变化,将InstallShield 2012正常安装界面贴上来,先让大家预览一下:安装欢迎界面,如下图:软件协议界面,见下图:安装路径指定,见下图:InstallShield默认语言设置,见下图:安装过程中1,见下图:安装过程中背景内容可以不断更换,这里只截取了部分,见下图:安装完成,启动InstallShield 2012,见下图: 阅读全文
NEWS:InstallShield 2012版本发布
2011-08-23 16:55 by Kevin.Wan, 3059 阅读, 0 推荐, 收藏, 编辑
摘要:Flexera Software在2011-08-23正式对外发布InstallShield 2012最新版本。按照功能模块划分,新版本包括InstallShield Premier,Professional和Express三个版本。按照支持语言,新版本包括英文版本和日文版本(强烈要求下一个版本出中文版)。InstallShield 2012新增功能如下:Ability to Create Suite Installations that Run Multiple Packages; New Modern, Customizable End-User Interface; Ability to 阅读全文
Basic INFO:InstallShield的Installation Designer中各设置视图按照序号显示
2011-08-18 16:56 by Kevin.Wan, 905 阅读, 0 推荐, 收藏, 编辑
摘要:首先给大家看最终效果图:各设置视图按照序号显示,我个人认为这样显示效果不错,可以提醒安装包开发人员按步骤进行相关属性的设置。但InstallShield默认界面并非这样显示,显示此效果的步骤如下:Tools -> Options -> User Interface选项卡中,View Organization分组中,View List Styles选择Developers 7,见下图注意:目前确认InstallShield 12(包括12)版本支持此设置,而InstallShield 2009版本已经不在支持。InstallShield 2008尚未确认,如果有使用InstallSh 阅读全文
Basic INFO: InstallScript工程的安装包中如何去掉对话框Title中的InstallShield字符串
2011-08-18 15:27 by Kevin.Wan, 2532 阅读, 0 推荐, 收藏, 编辑
摘要:经常有人问到InstallShield的InstallScript工程中,对话框Title的InstallShield Wizard字符串如何去掉。其实就是在OnBegin中添加一句话:function OnBegin()begin SetTitle(IFX_PRODUCT_NAME + " Kevin Wan's Wizard", 0, BACKGROUNDCAPTION);end;效果见下图: 阅读全文
INFO:InstallShield工程中如何将安装包集成的Prerequisites安装文件压缩到一个Setup.exe中
2011-08-18 10:48 by Kevin.Wan, 2941 阅读, 0 推荐, 收藏, 编辑
摘要:InstallShield工程中,我们有时会集成第三方安装包,通过Prerequisites的方式安装。如果安装包需要压缩成一个Setup.exe,其他内容项如果按照默认设置,结果将如下图:会出现一个额外的ISSetupPrerequisites文件夹,这不符合我们将所有内容压缩到一个Setup.exe的要求。解决上述问题方法如下:在Release视图中,在Setup.exe的选项卡下设置InstallShield Prerequisites Location属性,设置为Extract From Setup.exe,如下图:需要注意的是,我们在Prerequisites的添加视图中,通过Pro 阅读全文
InstallShield - Kevin Wan的博文索引
2011-08-16 09:43 by Kevin.Wan, 2755 阅读, 1 推荐, 收藏, 编辑
摘要:InstallShield 2012新功能试用(2)- 调用MsiGetProperty等MSI API发生变化(2011-09-16 15:53) Windows 8(Windows Developer Preview)先体验(2011-09-15 17:52) Basic INFO - XCopyFile2(2011-09-15 11:51) Basic INFO: 关于Windows系统中Program Files文件夹名显示的初探讨(2011-09-02 16:44) ... 阅读全文
BUG:InstallShield的安装包中获取命令行参数可能存在错误解析
2011-08-01 09:35 by Kevin.Wan, 994 阅读, 0 推荐, 收藏, 编辑
摘要:截止InstallShield 2011版本,如果在通过CMDLINE等方式获取命令行参数,获取的参数可能存在解析错误。比如在命令行输入“Setup.exe /disp Intel”这样的命令行参数。在InstallScript中通过CMDLINE获取的参数将只有“Intel”这个字符串。目前暂无修正的版本,大家只能在传入以D开头的命令参数时,避免使用“/”或“-”等字符。 阅读全文
Basic INFO: InstallShield中如何获取所调用Exe的返回值
2011-07-08 16:14 by Kevin.Wan, 2594 阅读, 0 推荐, 收藏, 编辑
摘要:这里我们假设我们通过LaunchAppAndWait去调用某个exe,该exe有返回值。代码如下:LaunchAppAndWait ( szProgram, szCmdLine, LAAW_OPTION_WAIT );nResult = LAAW_PARAMETERS.nLaunchResult;nResult中保存的就是返回值。 阅读全文
HOTFIX:InstallShield 2011通过VPN连接到License Server时无法启动
2011-04-15 10:51 by Kevin.Wan, 511 阅读, 0 推荐, 收藏, 编辑
摘要:InstallShield 2011浮动版的(Concurrent License)使用过程中,客户端InstallShield 2011从License Server获取动态授权时失败,导致无法启动。这种情况出现在Windows Vista或之后的操作系统上,并通过Microsoft Windows VPN客户端连接License Server时发生上述问题。解决办法:1. 关闭所有的InstallShield 2011。2. 找到InstallShield 2011的System文件夹,默认是"C:\Program Files\InstallShield\2011\System& 阅读全文
INFO: InstallShield不同版本对中文字符串的支持程度
2011-04-14 10:12 by Kevin.Wan, 2651 阅读, 0 推荐, 收藏, 编辑
摘要:近期不断遇到朋友反馈InstallShield对中文字符的支持问题。调查发现,不同的版本支持程度不一样,下面是对InstallShield 2011,InstallShield 2010以及InstallShield 2009三个版本比较获得的数据。 Project Type Feature InstallShield 2011 InstallShield 2010 InstallShield 2009 InstallScript TARGETDIR Suppo... 阅读全文
HOWTO: 如何在InstallShield的MSI工程中调用Merge Module的Custom Action
2011-04-06 10:13 by Kevin.Wan, 2126 阅读, 1 推荐, 收藏, 编辑
摘要:在MSI工程中,我们可能会遇到调用第三方Merge Module的情况,并且可能会调用该Merge Module的Custom Action(简称:CA),下面我们将举例示范如何调用。首先我们需要自创建一个Merge Module,在创建工程时选择Merge Module Project,在该Merge Module中添加两个CA,分别为InstallMM,UninstallMM,见下图:然后我们另外创建一个Basic MSI工程来示范如何调用Merge Module中的CA:1. 在Redistributes视图中添加我的Merge Module,见下图:2. 之后在Custom Actio 阅读全文
Basic INFO:InstallShield的InstallScript MSI工程中如何添加用户协议界面
2011-03-31 14:58 by Kevin.Wan, 1059 阅读, 1 推荐, 收藏, 编辑
摘要:在InstallShield中,通过工程向导创建的InstallScript MSI工程中,默认情况下是没有用户协议界面的。所以我们需要通过修改脚本的方式实现:首先是在事件响应函数OnFirstUIBefore中添加SdLicense2Ex,部分代码段见:Dlg_SdWelcome:szTitle="";szMsg="";nResult=SdWelcome(szTitle,szMsg);if(nResult=BACK)gotoDlg_SdWelcome;Dlg_SdLicense2:szTitle="";szOpt1="&q 阅读全文
Basic INFO:InstallShield 工程如何制作Network Image安装包(即安装包为一个Setup.exe文件)
2011-03-16 17:38 by Kevin.Wan, 2784 阅读, 1 推荐, 收藏, 编辑
摘要:这是基础内容,制作Network Image安装包(安装包为一个单独的Setup.exe),现按照各种工程类型分开介绍。InstallScript工程:方法1:直接在Project Assistant -> Build Installation界面中,勾选Single Executable,然后点击最下边的Build Installations按键进行编译。方法2:通过Release Wizard进行设置1. 从工具菜单启动Release Wizard2. Specify a Release界面默认设置,点击Next3. Media Type界面中,Media Type的下拉菜单中选择N 阅读全文