日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

InstallShield LaunchAppAndWait运行另一个程序并等待该程序终止。

發布時間:2023/12/10 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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。

  • 示例
if (LaunchAppAndWait (WINDIR^"NotePAD.EXE", "", WAIT) < 0) then MessageBox ("Unable to launch "+ WINDIR^"NotePAD.EXE" +".",SEVERE); endif;

總結

以上是生活随笔為你收集整理的InstallShield LaunchAppAndWait运行另一个程序并等待该程序终止。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。