【问题标题】:Windows Batch ScriptsWindows 批处理脚本
【发布时间】:2013-01-07 12:13:58
【问题描述】:

我已经编写了如下的windows批处理命令来静默安装应用程序

msiexec /q /i ZFPSetup.msi WIXUI_INSTALLDIR="C:\GEHC\" TARGETVDIR="ZFP" WIXUI_EXITDIALOGOPTIONALCHECKBOX=1 /l*v "C:\gehc\log.txt"

但该应用程序文件夹中有一个批处理文件,该文件应在安装时运行。我应该在上面的命令中添加什么才能调用该批处理文件。 好像那个批处理文件没有运行一样,安装不成功。

【问题讨论】:

    标签: windows iis-7 batch-file iis-6 iis-5


    【解决方案1】:

    通过将它放在下面的行来调用批处理文件

    call youruninstaller.bat
    

    【讨论】:

    • 如果应用程序在安装时将批处理文件加载到程序文件文件夹中,我该怎么办。有什么方法可以运行该批处理文件。我只是检查了那个应用程序,我发现在完成按钮上指定了一个 WixCustom 操作来运行该批处理文件并调用一个列表器。但是我们如何才能在静默安装中做到这一点..?
    • 那么使用完整路径和 'call' call %programfiles%\productname\yourbatch.bat 错误处理取决于批次,如果它返回错误代码,您可以使用类似 'if errorlevel neq 0' 或者先检查批次是否存在
    • msiexec 通常会立即返回,因此如果要运行安装程序设置的脚本,则需要使用 start 命令启动 msiexec,以确保不执行批处理命令太快了。
    • webrik & stephen - 你能不能给我一个例子......比如让我们说 abc。 bat 是安装程序在安装时放置的批处理文件的名称,那么命令应该是什么样子?
    • 该命令将如下所示:- msiexec /q /i ZFPSetup.msi WIXUI_INSTALLDIR="C:\GEHC\" TARGETVDIR="ZFP" WIXUI_EXITDIALOGOPTIONALCHECKBOX=1 /l*v "C:\gehc \log.txt" 调用 %programfiles%\productname\abc.bat
    【解决方案2】:

    假设您的 MSI 文件位于“c:\GEHC”中并且应用程序安装在“c:\program files\ZFP”中 试试这批:

        start /wait msiexec /q /i c:\ZFPSetup.msi WIXUI_INSTALLDIR="C:\GEHC\" TARGETVDIR="ZFP" WIXUI_EXITDIALOGOPTIONALCHECKBOX=1 /l*v "C:\gehc\log.txt"
    
    call "c:\program files\ZFP\abc.bat"
    

    你可以像这样添加错误处理:

    if errorlevel neq 0 echo ERROR
    

    但是您必须在批处理中使用的每个命令之后放置错误处理程序。 您还可以检查批处理文件是否存在,如果不存在,则可以认为 msi 没有正确安装:

    if not exist "c:\program files\ZFP\abc.bat" echo ERROR
    

    获取更多示例类型“如果/?”在 cmd 中

    【讨论】:

    • 我试过你的脚本,但它没有调用安装程序放置的 .bat 文件。安装程序是使用 WIX 创建的。 cd C:\Users\Administrator\Desktop start /wait msiexec /q /i ZFPSetup.msi INSTALLLOCATION="C:\Program Files (x86)\GE HealthCare" TARGETVDIR="ZFP" WIXUI_EXITDIALOGOPTIONALCHECKBOX=1 /l*v "C: \log.txt" 调用 "C:\Program Files (x86)\GE HealthCare\StartKaraf.bat"
    • 应用程序也在写入 IIS。如何将此功能添加到我的批处理脚本中。我在日志文件中得到的错误是“CustomAction WriteIIS7ConfigChanges 返回了实际错误代码 1603”。我现在一直在写 IIS :(
    猜你喜欢
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 2011-05-10
    • 1970-01-01
    相关资源
    最近更新 更多