提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:况鱼杰|2019-11-18 13:35:58.800|阅读 2028 次
概述:安装的一般要求是,安装完成后启动安装的应用程序,通常基于用户在类似于以下内容的完成对话框上的复选框选择。本文将会展示安装基本MSI和InstallScript项目类型后如何启动应用程序。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
InstallShield是构建Windows安装程序和MSIX包并直接在Microsoft Visual Studio中创建安装的最快速最简单的方法。借助InstallShield,您可以快速适应行业的变化,更快地进入市场并提供引人入胜的客户体验。
安装的一般要求是,安装完成后启动安装的应用程序,通常基于用户在类似于以下内容的完成对话框上的复选框选择。
以下各节描述了安装基本MSI和InstallScript项目类型后如何启动应用程序。
Windows Installer项目
对于Windows Installer项目,基本思想是在SetupCompleteSuccess对话框的完成按钮上调用带有控制事件的启动EXE自定义操作。
对于Basic MSI项目,您可以在Project Assistant的Installation Interview页面中启用此类复选框和操作。您首先需要选择的问题是,是否要为用户提供安装完成后启动应用程序的选项? 接下来,浏览要启动的可执行文件。在项目助手中,可执行文件必须已经在项目中; 在此示例中,名为sample.exe的文件已添加到目标为INSTALLDIR的组件中。
当选择是并浏览到可执行文件时,InstallShield会在项目中添加一个称做IS_LAUNCH_MY_PROGRAM_PLEASE的即时模式启动EXE自定义操作。
该动作未出现在序列中,之后在自定义动作视图中就不会定义安装UI序列,安装执行序列和相关设置。相反,该操作由附加到SetupCompleteSuccess对话框上的完成按钮(内部称为确定按钮)的DoAction控件事件启动。您可以在对话框视图中SetupCompleteSuccess的行为节点下查看控件事件的属性。
DoAction控件事件具有附加的条件LAUNCHPROGRAM,其中LAUNCHPROGRAM是与SetupCompleteSuccess上的CheckLaunchProgram复选框控件关联的属性。如果用户在运行时选中该复选框,则将设置LAUNCHPROGRAM,并将运行启动可执行文件的自定义操作。如果用户未选中该复选框,则条件将失败,并且不会启动可执行文件。
提示:默认情况下,LAUNCHPROGRAM属性没有值,因此默认情况下,运行时该复选框会取消选中。要指定最初应选中此复选框,可以将LAUNCHPROGRAM添加到值为1的Property Manager视图中。
选择添加复选框,然后重新构建并运行安装后,SetupCompleteSuccess对话框如下所示。
(如果您在对话框编辑器中查看SetupCompleteSuccess对话框,您会注意到启动该应用程序的选项受两个控件的支持,这两个复选框控件名为CheckLaunchProgram,而文本控件名为LaunchProgramText。具有两个控件的原因是该复选框控件不支持Transparent属性,因此该复选框控件的文本将在白色对话框背景位图上显示为灰色背景。文本控件确实支持Transparent属性,因此该选项由一个复选框,没有文本和一个文本控件表示。)
使用户能够选择是否启动应用程序的复选框控件和文本控件具有以下复合控件条件:
SHOWLAUNCHPROGRAM="-1" And PROGRAMFILETOLAUNCHATEND<>"" And NOT Installed And NOT ISENABLEDWUSFINISHDIALOG
除其他事项外,该条件还确保该复选框仅针对首次安装(未安装)出现,而不针对维护操作或卸载出现。一种可能的改进是通过添加类似于&ProgramFeatureName = 3的条件,仅在选择了包含应用程序的功能时才启动该应用程序。
InstallScript项目
对于InstallScript项目,您可以通过修改OnFirstUIAfter事件处理程序来添加启动应用程序的选项。默认情况下,OnFirstUIAfter事件处理程序包含一个if语句,该语句检查是否需要重新启动以及是否包含UpdateService支持,并显示适当的完成对话框。 可能的完成对话框是SdFinishReboot,SdFinishUpdateEx和SdFinish。在大多数情况下,SdFinish是您要修改的对话框。
在OnFirstUIAfter的默认实现中,显示SdFinish的if语句的分支如下所示:
SdFinish(szTitle, szMsg1, szMsg2, szOpt1, szOpt2, bvOpt1, bvOpt2);
要启用带有适当文本的复选框,并在用户选中该复选框时启动您的应用程序,您可以修改if语句的分支,使其显示如下:
bvOpt1 = TRUE; // enable check box szOpt1 = "Launch %p"; // %p expands to product name SdFinish(szTitle, szMsg1, szMsg2, szOpt1, szOpt2, bvOpt1, bvOpt2); if (bvOpt1) then LaunchApp(TARGETDIR ^ "sample.exe", ""); endif;
(实际上,对于szOpt1,应使用字符串表条目而不是硬编码字符串,以简化安装项目的本地化。)
在运行时,对话框如下所示。
与Windows Installer项目一样,一项增强功能是确保使用FeatureIsItemSelected仅在安装了包含应用程序的功能时才显示该复选框。
推荐文章:
如果您想要购买正版授权InstallShield,可以联系咨询相关问题。
关注慧聚IT微信公众号☟☟☟,了解产品的最新动态及最新资讯。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢