Quote from: http://flexerasoftware.force.com/articles/en_US/HOWTO/Q111515

Synopsis

This article describes how to launch a batch file from a Windows Installer (MSI-based) setup.

Discussion

The following steps describe how to create a custom action that launches a batch file targeted to be installed to the main installation directory location (i.e., the location stored in the INSTALLDIR MSI property).

  1. Make sure that the installer is configured to install the batch file to the main installation directory location (i.e., the location stored in the INSTALLDIR MSI property)
  2. Launch the Custom Action Wizard. For more information, see the "Additional Information" section of this article.
  3. On the "Basic Information" dialog, enter a name (i.e., test) for the custom action in the Name field.
  4. Click the Next button.
  5. On the "Action Type" dialog, set the "Type" to "Launch an executable" and the "Location" to "Stored in the Directory Table".
  6. Click the Next button.
  7. On the "Action Parameters" dialog, set the "Source" to "SystemFolder" and the "Target" to the following:

"[SystemFolder]cmd.exe" /c "[INSTALLDIR]NameOfBatchFile.bat"

This command calls cmd.exe (the executable for the Windows command prompt) from the location stored in the SystemFolder MSI property and passes cmd.exe the path to the batch file. Cmd.exe accepts various parameters. For example, to have the command prompt window close after launching the batch file, use the /c parameter, as in the example above. To have the command prompt window remain open after launching the batch file, use the /k parameter instead. For more information regarding the parameters accepted by cmd.exe, see the "Additional Information" section of this article.

  1. Click the Next button.
  2. On the "Additional Options" dialog, keep the default values selected.
  3. Click the Next button.
  4. On the "Respond Options" dialog, keep the default values selected.
  5. Click the Next button.

On the "Insert into Sequence" dialog, set the "Install Execute Sequence" to "After InstallFinalize" and the "Install Execute Condition" to the following: Not Installed and VersionNT. This condition instructs the install to only execute the custom action during a first-time install on an NT-based target system.

Additional Information

This method is restricted to NT systems.

For more information about the Microsoft cmd.exe command interpreter, please refer to Microsoft TechNet article Cmd

For more information on the VersionNT property, please refer to MSDN article VersionNT Property

Launch a Batch File With Windows Installer的更多相关文章

  1. run commands in linux shell using batch file

    adb shell as root after device rooted once device rooted, we must perform "su" before we g ...

  2. How to run a batch file each time the computer loads Windows

    https://www.computerhope.com/issues/ch000322.htm#:~:text=Press Start%2C type Run%2C and press Enter. ...

  3. 解决ArcGIS安装之后出现的Windows installer configures问题

    ----Please wait while Windows installer configures ArcGIS Desktop Error Message错误信息 When launching A ...

  4. I Take It All Back: Using Windows Installer (MSI) Rollback Actions

    Original Link: http://blogs.flexerasoftware.com/installtalk/2011/10/i-take-it-all-back-using-windows ...

  5. 【转】转移Package Cache文件夹,转移Windows Installer文件夹

    详见http://blogs.msdn.com/b/heaths/archive/2014/02/11/how-to-relocate-the-package-cache.aspx (注意:若Wind ...

  6. Wix学习整理(3)——关于Windows Installer和MSI

    原文:Wix学习整理(3)--关于Windows Installer和MSI 关于Windows Installer Windows Installer是微软Windows操作系统自带的一个软件安装和 ...

  7. 安装Windows Installer服务

    Windows Installer 5.0.810.500 下载地址: 电信:http://mdl1.mydown.yesky.com/soft/201303/WindowsInstaller.rar ...

  8. .net平台 通过Windows installer 打包和部署实例操作

    Windows installer 打包和部署 1.新建项目. 打开VS,新建项目->其他项目类型->安装和部署(Visual Studio Installer). 注:若VS2013 或 ...

  9. Windows Installer 服务启动错误 14007 的解决办法

    问题: 在 本地计算机 无法启动 Windows Installer 服务. 错误代码 14007: 在活动的激活上下文中没有找到任何查找密钥. 这个问题似乎涉及到 Windows Installer ...

随机推荐

  1. HDU4745 - Two Rabbits(区间DP)

    题目大意 给出一个长度为n的环状序列,两只兔子各自从一个点出发,一个顺时针跳,一个逆时针跳,每个时刻都要求两只兔子所在的数字是相同的,兔子最多跳一个圈~~~问兔子们最多能跳多少次 题解 一个逆时针跳, ...

  2. 使用ndk standalone工具链来编译某个平台下的库

    地址: http://www.kandroid.org/ndk/docs/STANDALONE-TOOLCHAIN.html It is now possible to use the toolcha ...

  3. puppet yum仓库

    http://tmz.fedorapeople.org/repo/puppet/epel/5/x86_64/ [epel-puppet] name=epel puppet baseurl=http:/ ...

  4. 细谈JavaScript中的书写规范

    当你有一些感触想写下一些东西的时候,总会发现其实你想写的所有文章都有大牛已经给你写好了,而且写的比你好. https://github.com/ecomfe/spec/blob/master/java ...

  5. http://www.cnblogs.com/xdp-gacl/p/3622275.html

    http://www.cnblogs.com/xdp-gacl/p/3622275.html

  6. 在大型软件中用Word做报表: 书签的应用

    本文转载:http://www.cnblogs.com/huyong/archive/2011/08/24/2151599.html 报表基本上在每一个项目中占有很大的比例,做报表也是我们开发人员必须 ...

  7. CentOS 修改IP地址, DNS, 网关

    一.CentOS 修改IP地址 修改对应网卡的IP地址的配置文件# vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改以下内容DEVICE=eth0 #描述 ...

  8. SqlServer表中两条全然同样的记录,怎样删除当中1条

    描写叙述:表无主键ID,误插入两遍数据,怎样删除内容同样的记录,而仅仅留下1条. SELECT DISTINCT * INTO #temp FROM grade; DROP TABLE grade; ...

  9. Android开发环境搭建(windows OS)之补充

    这几天搭建了个安卓开发环境,也想玩玩安卓开发.在查询CSDN,CNBLOG,视频网站之后终于把开发环境搭建起来了,发现所有的指导都比较离散,比如有些只说安装方法,有些只说下载方法.本文来个集大成,算是 ...

  10. ios的@property属性和@synthesize属性

    当你定义了一系列的变量时,需要写很多的getter和setter方法,而且它们的形式都是差不多的,,所以Xcode提供了@property 和@synthesize属性,@property用在 .h ...