InstallShield LaunchAppAndWait运行另一个程序并等待该程序终止。
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                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环境下安装nginx步骤(不错
- 下一篇: 找Devcon.exe的同学看过来
