InstallShield LaunchAppAndWait运行另一个程序并等待该程序终止。
- LaunchAppAndWait
语法:LaunchAppAndWait (szProgram, szCmdLine, lWait);
说明:LaunchAppAndWait函数运行由szProgram指定的带有szCmdLine指定的命令行参数的应用程序。第三个参数,lWait指示安装在继续前是否要等待直到运行的应用程序终止。
一个安装程序只能监控由szProgram指定的应用程序;如果该应用程序要运行其它应用程序或进程,安装程序不能监控它们。因此,安装程序将在第一个应用程序结束后继续,即使那时由第一个应用程序运行的其它应用程序仍在运行。注意如果运行的应用程序终止失败,则安装程序将无限等待运行的应用程序完成。
参数:
szProgram
指定要被运行的应用程序的文件名。建议要指定应用程序的完整路径和文件名。如果你不包括一个路径,InstallShield将使用被Windows API 函数CreateProcess使用的相同的查找次序来定位文件。如果文件未能在这些位置找到,函数将失败。
如果应用程序的全限定名包括长文件夹名和/或一个长文件名,在把szCommand传递给LaunchAppAndWait之前先把它传递给LongPathToQuote。
szCmdLine
指定传递给运行的应用程序的命令行参数。为运行没有命令行参数的应用程序,传递一个空字符串。
lWait
指定安装程序在继续前是否要等待运行的应用程序终止。在该参数位置传递下列预定义常量之一:
NOWAIT:指定安装程序在运行应用程序后立即继续,应用程序将和安装程序脚本同时运行。注意使用该参数等效于调用函数LaunchApp。
WAIT:指定安装程序必须等待直到由该函数运行的应用程序终止。
返回值:
1:表明应用程序成功运行。
< 0:表明应用程序未能运行。
注解:
·InstallShield 安装程序使用函数CreateProcess。在InstallShield运行应用程序后,它查找装入的应用程序的窗口句柄。如果它找到窗口句柄,则它在继续前等待直到应用程序窗口消失。
·安装程序不能监控一个不创建窗口的应用程序。如果指定的应用程序没有创建一个窗口,安装程序在运行应用程序后立即继续。注意应用程序的窗口不需要可见,但它必须存在,以便让安装程序等待。
·一些应用程序试图装入DLLs并且当那些DLLs不能被定位时不能正确运行。为确保一个应用程序能找到它需要的DLLs,有必要在调用LaunchAppAndWait前改变到包含可执行应用程序的目录。为改变当前目录,调用ChangeDirectory函数。
·如果运行的应用程序终止失败,则安装程序将无限等待运行的应用程序完成。
·LaunchAppAndWait以一个全屏DOS窗口来运行DOS程序。为以一个不同类型的窗口来运行一个DOS程序,你必须直接调用Windows APIs。
- 示例
InstallShield LaunchAppAndWait运行另一个程序并等待该程序终止。相关推荐
- 【Linux】Ubuntu编写并运行第一个C和C++语言程序
1 安装Ubuntu 在VMware16虚拟机安装Ubuntu详细教程 2 配环境 安装gcc编译器 sudo apt-get install build-essential 安装vim编辑器 sud ...
- JDK下载、安装、运行第一个Java程序的过程以及javac不是内部或外部命令的解决办法
JDK下载.安装.运行第一个Java程序的过程以及javac不是内部或外部命令的解决办法 1.下载和安装JDK开发环境 下载地址:https://www.oracle.com/technetwork/ ...
- Go:分布式学习利器(1) -- 开发环境搭建 + 运行第一个go程序
文章目录 为什么要学习 go 开发环境搭建 -- MAC 运行第一个go程序 go 函数的返回值设置 go 函数的命令行参数 为什么要学习 go 在如下几个应用场景的需求下产生了go: 超大规模分布式 ...
- iOS 11开发教程(三)运行第一个iOS 11程序
iOS 11开发教程(三)运行第一个iOS 11程序 运行iOS11程序 创建好项目之后,就可以运行这个项目中的程序了.单击运行按钮,如果程序没有任何问题的话,会看到如图1.6和1.7的运行效果. 图 ...
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
网友分享,拿来共享一下 这是Hadoop学习全程记录第2篇,在这篇里我将介绍一下如何在Eclipse下写第一个MapReduce程序. 新说明一下我的开发环境: 操作系统:在windows下使用wub ...
- 使用 Spring Boot CLI 运行第一个Spring boot程序
简介 Spring Boot CLI是Spring Boot的命令行界面.它可以用来快速启动Spring. 它可以运行Groovy脚本. Spring Boot CLI是创建基于Spring的应用 ...
- python flask框架是什么_Flask框架是什么?带你安装运行第一个Flask程序
1 了解框架 Flask作为Web框架,它的作用主要是为了开发Web应用程序.那么我们首先来了解下Web应用程序.Web应用程序 (World Wide Web)诞生最初的目的,是为了利用互联网交流工 ...
- linux编写一个简单的端口扫描程序,小弟我在linux下写了个简单的多线程端口扫描程序,运行时出现有关问题,请问一下(2)...
当前位置:我的异常网» Linux/Unix » 小弟我在linux下写了个简单的多线程端口扫描程序, 小弟我在linux下写了个简单的多线程端口扫描程序,运行时出现有关问题,请问一下(2) www. ...
- java 获取文件所在的文件夹_带你0基础编写一个Java小程序,领略Java程序从编写到编译再到运行的全流程...
在学习Java之前我们需要先认识下什么是计算机语言?计算机语言又有哪些分类?在了解这些后对我们理解学习帮助是很大的. 要知道计算机语言是人与计算机之间进行信息交流沟通的一种特殊语言,又分为机械语言.汇 ...
最新文章
- 那个计算机应用没有广告,为什么别人的电脑没有什么广告,而你的电脑一大堆呢?答案在这里...
- 应用打包Ubuntu下部署ScriptCase应用一例
- 二叉树中如何求根节点到任意节点的路径?
- python 入门程序_非Python程序员的Python速成课程-如何快速入门
- zabbix mysql设置中文乱码_解决zabbix监控因php问题导致图形界面中文乱码方法
- container_of实例
- 文件的读写操作 c# 1614992256
- javascript 西瓜一期 03 机器语言与高级语言
- input内强制保留小数点后两位 位数不足时自动补0
- ngxin防止并发(白名单,前端有代理)
- 算法导论笔记:32字符串匹配算法
- 【LeetCode 剑指offer刷题】字符串题3:Reverse String
- polar函数--Matplotlib
- 12.10 Nginx访问日志;12.11 Nginx日志切割;12.12 静态文件不记录日志和过期
- 深入浅出CNN-经典总结(2019中秋)
- arXiv每日推荐-5.9:计算机视觉/图像处理每日论文速递
- Version 28 (intended for Android Pie and below) is the last version of the legacy support library, s
- 怎样快速查询多个天天欧洲物流单号的在途信息
- 化工厂人员定位保障安全管理
- 用JAVA 做一个简易版的坦克大战(只实现基本功能)