摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在Basic MSI工程类型中,要做到在安装类型界面中,用户即使选择了Complete,默认情况下部分Feature也不进行安装。 首先需要将该Feature的Install Level设置为200(> 默认的Install Level = 100)。 其次,在Dialog视窗中,找到SetupType对话框,选择Behavior,找到PushButton类型的Next控件。 1. 删除默认的AllLocal ALL _IsSetupTypeMin = "Typical"这条数据。 2. 添 阅读全文
随笔档案-2010年09月
HOWTO:如何在Redistributables视图中显示所有的水晶报表(Crystal Reports)Merge Module
2010-09-29 15:41 by Kevin.Wan, 2452 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。如果打开InstallShield,我们在Installation Designer -> Application Data -> Redistributables视图中,只可以看到最新版本的水晶报表(Crystal Reports),现在说明如何让InstallShield显示所有的水晶报表的Merge Module,操作方法如下:1. 首先在InstallShield的Support路径(...<InstallShield>\Support)下找到HideMM.ini这个文件。2. 然后修 阅读全文
Microsoft宣称Visual Studio Installer将退役
2010-09-28 09:15 by Kevin.Wan, 5015 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在今年Visual Studio 2010发布时我们注意到,Visual Studio的用户可以免费获得InstallShield Limited Edition版本(简称InstallShield LE)。Microsoft的Visual Studio Deployment的项目经理Candy Chiang在MSDN中声明,在未来的Visual Studio版本中,Visual Studio Installer将不再提供,取而代之的是InstallShield,详见《ClickOnce and Setup & 阅读全文
HOWTO:如何在InstallScript脚本中完成DLL, OCX的注册
2010-09-26 12:00 by Kevin.Wan, 5342 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。虽然这是一个非常简单的问题,但经常有人会问这样的问题,只能一次次解释说明,所以直接写个简单示例得了。在事件响应函数OnEnd中添加如下代码段:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->functionOnEnd()stringszDLL,szReg,szCmd;beginszReg=WINSYSDIR^"regsvr32.exe";szDL 阅读全文
HOWTO:安装完成后刷新Windows桌面
2010-09-25 16:10 by Kevin.Wan, 4042 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。有时我们会遇到同一软件在目标机上安装完成后,在桌面创建的快捷方式图标未更新,导致该问题原因是Windows刷新机制,如果安装测试遇到这种情况,保险起见,在OnEnd添加如下代码,我们主动通知Windows刷新桌面。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->#include"ifx.h"//CalltoWindowsusedinthe&quo 阅读全文
HOWTO:修改或删除产品在系统注册表中的安装信息
2010-09-20 13:05 by Kevin.Wan, 3934 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。InstallScript工程中,安装包默认会在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{产品GUID}写入产品相关信息。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->functionOnEnd()NUMBERnRootKey;STRINGszKey;begi 阅读全文
如何选择InstallShield工程类型
2010-09-19 15:57 by Kevin.Wan, 6398 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。熟悉InstallShield用户清楚有Basic MSI,InstallScript和InstallScript MSI三种工程类型可选择,如果你初次使用InstallShield,你可能面临一个问题,哪一种工程类型适合你?有些InstallShield使用很久的开发人员,也可能依然存在这样的疑惑。这个答案取决于你的安装打包经验和项目需求。下面,我们通过InstallScript,Basic MSI以及InstallScript MSI的功能特性比较说明,使得你更容易决定选择哪种工程类型。InstallScript 阅读全文
多语言安装包中,多国语言选择下拉菜单内容自定义
2010-09-17 14:59 by Kevin.Wan, 4254 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在制作多国语言安装包中,默认情况下,多国语言选择的下来菜单中,显示内容单一语言显示,如下图:有些用户可能会要求,按照各自语言去显示上述内容。效果如下图(因语言支持问题,我这里出现部分乱码):具体操作方法如下:在InstallShield安装目录下 ...\InstallShield\2010\Support 找到0x****.ini文件,将其中[Languages]段的内容更换为如下:Code highlighting produced by Actipro CodeHighlighter (freeware)htt 阅读全文
HOWTO:在Basic MSI工程中添加自定义安装界面
2010-09-17 11:42 by Kevin.Wan, 4128 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。用户如果通过InstallShield自带的Project Assistant创建一个Basic MSI类型的工程,默认的安装界面只有欢迎界面,License协议界面,用户信息界面,安装路径选择界面,自定义安装界面,以及安装结束界面,但安装需求往往并非这么简单,有些用户可能需要添加自定义界面,但如何能将自定义界面添加到标准安装界面的序列中,我们接下来将详细讲解。删减标准安装界面 如果只是想去掉一些标准界面,则直接在Project Assitant的Installation Interview向导中进行勾选或反勾选(如 阅读全文
HOWTO:将应用程序安装到指定路径
2010-09-17 11:02 by Kevin.Wan, 5988 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。制作安装包,友好的情况下可以允许用户指定安装路径,当然,也必然有些应用程序,需要固化安装路径,不允许用户选择。指定路径,除了在控制界面中去除目标路径选择的界面外,还有一个必须面对的问题,就是安装路径固化,如果固定的路径正好可以利用InstallShield提供的路径变量,那这个需求到此就算实现了。但有一种情况,这个安装路径无法直接指定,比如要写到“D:\Kevin Wan\Config”这个路径下。(早期InstallShield版本,在工程属性设置中可以直接指定,但在目前InstallShield的最新版本中,无法 阅读全文
HOWTO:去除安装界面左下角的InstallShield标识(Basic MSI)
2010-09-17 10:13 by Kevin.Wan, 4537 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在开始修改之前,还是要强调一点,建议不要去掉这个InstallShield的品牌标识,InstallShield现在已经不仅仅是一款软件产品,更代表着Windows平台的安装打包品质,对于最终用户而言,会因InstallShield品牌而信任你的安装程序。第一种效果:去掉InstallShield标识,将横线延长(见下图)操作方法:1. 在Installation Designer -> Additional Tools -> Direct Editor -> Control中,找到Branding 阅读全文
HOWTO:在安装包运行时指定Component的安装路径(续) - MSI
2010-09-16 16:38 by Kevin.Wan, 4760 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。前一节《HOWTO:在安装包运行时指定Component的安装路径》介绍了在InstallScript和InstallScript MSI工程中,如果在运行时指定Component的安装路径(也可以理解为一些文件的安装路径)。现介绍Basic MSI工程类型中如果实现上述同样的功能,下面介绍的方法也适用于InstallScript MSI工程。1. 在Setup Design中找到相对应的Component。2. 点击Destination的后侧的“...”按键。3. 在Browse for Directory对话框 阅读全文
HOWTO:如果检测用户是从系统的“添加/删除”中卸载软件
2010-09-16 15:24 by Kevin.Wan, 3292 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在事件响应函数OnMaintUIBefore中添加如下代码:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> if(!ADDREMOVE)then//SetupisnotbeingrunfromAdd/RemoveProgramselse//SetupisbeingrunfromAdd/RemoveProgramsMessageBox("Setuprunf 阅读全文
HOWTO:在安装包运行时指定Component的安装路径
2010-09-16 10:11 by Kevin.Wan, 5111 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在某些情况下,安装包需要灵活,动态处理某些文件的安装路径,具体操作方法如下:适用工程类型:InstallScript和InstallScript MSI1. 在Setup Design视图中找到相对应的Component2. 点击Destination的路径选择下拉菜单3. 在Browse for Directory对话框中,选中Script-defined Folders点击鼠标右键选择New Directory,默认会产生一个<NEW_DIRECTORY1>。4. 选中<NEW_DIRECTOR 阅读全文
HOWTO:如果制作卸载时需要确认密码的安装包
2010-09-15 15:59 by Kevin.Wan, 3439 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。很早之前记得有朋友问到如何让自己的安装包在目标机上卸载时,进行密码确认,避免本机其他用户误卸载程序。卸载需要密码确认,那自然是在安装时由用户设置卸载密码,代码如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1functionOnBegin()2stringszQuestion,szDefault,svResult,svValue;3begin4//TODO 阅读全文
HOWTO:安装包卸载时如何保留部分文件不被卸载
2010-09-15 13:33 by Kevin.Wan, 3621 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。工程类型:InstallScript在Components视图中,选中文件所在Component。修改Component的“Uninstall”属性值为“No”。InstallScript MSI和Basic MSI工程类型:在Components视图中,选中文件所在Component。修改Component的“Permanent”属性值为“Yes”。 阅读全文
INFO:Custom Action在多个工程中的重复使用
2010-09-14 11:49 by Kevin.Wan, 2807 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。有些我们会写一些Custom Action(简称:CA),如果维护几个类似的产品,那很有可能其中的CA都是一样的,现在就给大家提供一个简单的复制办法。首先,在原工程中选择相应的CA,点击鼠标右键选择"Export"。接着,在导出对话框中浏览查找到要将这个CA导入的InstallShield工程文件(后缀是*.ism)。最后,选中相应的ism工程文件,点击Open,这样就在不打开另外一个工程的情况下,将CA导入到这个工程中了。 阅读全文
INFO:安装包文件共享(Shared Files)设置注意事项
2010-09-14 11:25 by Kevin.Wan, 3028 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在使用InstallShield进行安装打包过程中,设置文件共享时有以下注意事项:为了设置文件共享,必须设置包含该文件的Component共享。只有Component中的Key File才被共享。如果有多个文件需要共享,必须分到多个Component中。如果Component包含了动态链接文件或文件夹,及时Component设置了共享,其中的文件也不会被共享。 阅读全文
HOWTO:如何解决安装包在系统“添加/删除”中无法修复或卸载的问题
2010-09-14 10:19 by Kevin.Wan, 3000 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。有些情况下,安装的程序从系统“添加/删除”中无法修复或卸载。一般是由于注册表中HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall的相应数据损坏。出现这种情况是,请通过直接运行原安装包,通过修复或卸载来完成修复,或卸载。以后经常写一些这种一两句就可以解决的问题,大家可以通过INFO标签过滤翻阅。 阅读全文
如何制作试用版安装包
2010-09-14 00:32 by Kevin.Wan, 2743 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。首先需要在http://activationservice.installshield.com/doLogin.do注册一个试用账号。注册完成后系统会自动发送一个15天的试用账号和密码。在图标Trialware Files上点击鼠标右键,创建一个试用配置项(见下图)。首先选择试用文件(一般选择主应用程序),之后点击Acquire,见下图点击Next(见下图),在下图中输入申请到的用户名和密码,继续点击Next。之后提示获得一个License。之后在http://activationservice.installshi 阅读全文
INFO:InstallShield中安装路径变量的区别
2010-09-13 16:30 by Kevin.Wan, 3820 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在InstallShield中写代码时,刚接触IS的开发人员容易将安装包安装路径变量TARGETDIR和INSTALLDIR搞混。TARGETDIR是InstallScript工程中使用,默认是<FOLDER_APPLICATIONS>\<IFX_COMPANY_NAME>\<IFX_PRODUCT_NAME>,这也是三个变量组成。在脚本内可以直接赋值。而在InstallScript MSI和Basic MSI工程中,安装路径变量是INSTALLDIR,需要通过MsiGetProp 阅读全文
InstallAnywhere多语言打包过程中需要注意的问题
2010-09-10 15:47 by Kevin.Wan, 3378 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。今天试用InstallAnywhere 2010 Enterprise版本,试做一个多国语言安装包,支持中文简体和英文,安装文件很简单,就几个小文件,按正常操作,应该是十分钟就可以搞定的事情,但事情远非如此。下面是语言配置界面:安装包很快就做好,试运行,初始语言选择界面每次都是一晃而过,直接进入下一界面,界面语言为英文,没了语言选择。花费了几个小时,始终找到了问题的原因,今天测试用的环境是英文XP SP3环境,区域语言设置如下图:问题就出在了这里,如果修改为Chinese(PRC),重新编译,问题解决,如下图:又是U 阅读全文
HOWTO:InstallShield如何往注册表中写二进制数据(REGDB_BINARY)
2010-09-09 17:28 by Kevin.Wan, 3636 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。下面是一个简单的示例代码,实现将二进制数据写入注册表:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->function OnBegin() NUMBER nRootKey, nType, nSize; STRING szKey,szNumName, svHex[8]; begin nRootKey = HKEY_LOCAL_MACHINE; ... 阅读全文
AdminStudio 9.5 Service Pack 3
2010-09-09 12:45 by Kevin.Wan, 1492 阅读, 收藏, 编辑
摘要:
2010/09/08,Flexerasoftware发布了AdminStudio 9.5 Service Pack 3。本次发布主要包括了“Single Application Version of the Automated Application Converter”。详细见:AdminStudio Release Notes 阅读全文
InstallShield 2008 终止声明 (EOL)对最终客户意味着什么
2010-09-09 09:57 by Kevin.Wan, 2924 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在2010/08/19 Flexerasoftware发布InstalShield 2011的同时,也同时正式声明将终止InstallShield 2008。我将简单分析此消息对我们广大InstallShield用户意味着什么。2010/08/19 Flexerasoftware声明终止InstallShield 2008,这包括英文版和日文版的InstallShield 2008 Premier,Professional以及Express版本。从这一天起Flexerasoftware将不再接受InstallShie 阅读全文
InstallShield 2011新功能试用(10)- Express版本
2010-09-08 17:13 by Kevin.Wan, 3321 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。首先得解释一下,Express版本其实不能算是InstallShield 2011的一个新功能,之前很少关注Express版本,所以今天借InstallShield 2011功能评估的机会,一起试用Express。下载安装自不用说,我们就从创建一个工程开始,见下图:其中有项内容请大家注意,Project Language,用户可以在创建工程时指定我要创建哪种语言包,这个功能似乎比Professional还方便,呵呵。之后是Project Assistant,从Application Information,Insta 阅读全文
HOWTO:InstallShield中如何制作应用程序的卸载快捷方式
2010-09-08 11:12 by Kevin.Wan, 5826 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。今天简单介绍如果制作应用程序的卸载快捷方式。InstallScript和InstallScript MSI工程:在事件响应函数OnMoved中添加如下代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->function OnMoved()begin if( !REMOVEALLMODE ) then AddFolderIcon( FOLDER_PROGR... 阅读全文
HOWTO:如何通过脚本创建一个文件夹的快捷方式
2010-09-07 16:16 by Kevin.Wan, 3515 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。某些情况下我们需要创建文件夹的快捷方式,正常我们可以通过Shortcuts视图设置,另外我们还可以通过脚本代码创建指定文件夹的快捷方式,代码如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->szProgram = WINDIR ^ "explorer.exe"; szCommandLine = szProgram + " " 阅读全文
InstallShield中如何调用系统API
2010-09-06 16:37 by Kevin.Wan, 4055 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。下面用简单的示例说明,如何在InstallShield中调用系统的API。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->prototype BOOL KERNEL32.GetComputerName(BYREF STRING, BYREF NUMBER);function OnBegin() STRING szCmpName; NUMBER nLength;... 阅读全文
InstallShield 2011中执行托管代码的Custom Action失败,导致安装包回滚
2010-09-06 15:14 by Kevin.Wan, 2911 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在InstallShield 2011 Basic MSI工程类型中,通过Custom Action调用托管代码,并且选择“Installed with the project" 或 "Path referencing a property"时,在安装包运行过程中会导致安装包失败回滚,但如果选择“Stored in Binary table”则不会存在问题。此问题已经解决,Q210406: HOTFIX: During Installation, Execution of Managed 阅读全文
InstallShield 2011中数字签名失败的问题
2010-09-06 13:00 by Kevin.Wan, 3245 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在InstallShield 2011中,用户通过在Release视图进行数字签名设置后,编译会失败,三种工程类型Basic MSI,InstallScript和InstallScript MSI都会有同样的问题。该问题已经解决,详细见KB:Q210261: HOTFIX: Building a Signed Release Fails with Error -1027解压public_IsWsBuild.zip,将解压出来的IsWsBuild.ocx文件替换到InstallShield安装目录下的System文件夹 阅读全文
转帖:InstallShield---如何使用脚本生成GUID
2010-09-01 17:38 by Kevin.Wan, 3160 阅读, 收藏, 编辑
摘要:
朋友Fishout写了一篇关于在InstallShield中,如何用脚本生成GUID,写的非常好,在征得朋友Fishout的同意后特转到这里与大家分享,原文链接:http://blog.csdn.net/fishout/archive/2010/09/01/5855822.aspx版权归原作者所有,未经同意严禁转载,大家也可以访问Fishout的Blog。下面是全文:作者:FishoutGUID---Globally Unique Identifier(全球唯一标识符)是通过特定算法产生并具有唯一性的一个二进制长度为128位的数字,在安装过程中,有时需要生成GUID供安装过程调用,以下代码的出 阅读全文
InstallShield中安装包嵌套的问题
2010-09-01 17:14 by Kevin.Wan, 4163 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在安装包制作过程中,安装包中增加一个或多个其他的第三方安装包是很常见的,尤其考虑到方便用户一次点击,全程安装,很多安装包做成一个大而全的综合包。这样必然涉及安装包嵌套的问题,今天就以InstallShield下InstallScript,InstallScript MSI和Basic MSI三种工程类型为例,说明哪些工程类型的安装包可以嵌套调用。说明:1. 下面测试结果中,InstallScript和InstallScript MSI工程中在事件响应函数OnBegin里调用第三方安装包,Basic MSI调用第三方安 阅读全文
InstallShield安装打包编译自动化(3)- 更新Package GUID,Product GUID以及Upgrade GUID
2010-09-01 13:46 by Kevin.Wan, 4063 阅读, 收藏, 编辑
摘要:
版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。在自动化编译过程中,如何修改产品的GUID,Package的GUID以及升级的GUID,受网友fishout的启发,找到了一些相关方面的资料,特与大家分享。关于InstallShield内部用脚本实现GUID的生成,请大家关注fishout的Blog他应该会更新到自己的Blog中的。下面是Aaron McLean写的一段VBScript示例代码,引用请保留原作者信息。另外注意ISWiAutomation版本的不同,之前曾向导大家介绍过。InstallShield 2009和2010的GUID生成实例:Code hig 阅读全文