如何在LabVIEW中以編程方式運行可執行文件

更新 Nov 10, 2020

環境

軟體

  • LabVIEW

我有一個要從LabVIEW應用程序中調用的應用程序或可執行文件(* .exe文件)。如何從LabVIEW程序中啟動該可執行文件?如果可執行文件需要或可以採用輸入選項,該怎麼辦?

在LabVIEW中調用* .exe文件的常用方法是使用System Exec VI。 System Exec VI位於LabVIEW 7.x的“通訊”選板中,或者位於LabVIEW 8.x及更高版本的“連接性»庫與可執行文件”選板上。

System Exec VI接受在Windows命令提示符下執行的字符串輸入。如果Windows PATH環境變量中存在可執行文件目錄,則可以通過使用可執行文件名作為此字符串輸入來運行該可執行文件(例如application_name.exe)。否則,您將需要在命令行輸入中包含可執行文件的完整文件路徑,並在工作目錄輸入中包含可執行文件的文件夾的文件路徑。有關如何實現System Exec VI的示例,請參見附加信息。


System Exec VI不支持文件名後的調用選項。如果您的應用程序要求您使用選項調用可執行文件,則可以執行以下操作:
  1. 創建一個filename.bat文件,該文件調用可執行文件,然後調用所需的選項(例如filename.exe -option1 -option2 )。
  2. 然後,使用LabVIEW System Exec VI調用filename.bat文件。

附加信息

有關使用System Exec VI的示例,請參考LabVIEW 2012及更低版本中<LabVIEW> \ examples \ comm目錄中的調用System Exec VI,或參見<LabVIEW> \ examples \ Connectivity \中的命令行執行VI。 LabVIEW 2013及更高版本中的“庫和可執行文件”目錄。另外,請參見下面的LabVIEW摘錄,以簡單的方式從LabVIEW內部運行Windows Notepad程序(至少需要LabVIEW 8.0)。



如果您使用的是LabVIEW 32位操作系統,並嘗試調用C:\ Windows \ System32文件夾中的可執行文件,則可能會看到無法打開.exe。原因是無法通過32位LabVIEW環境訪問64位可執行文件。要運行這些.exe文件,請創建一個批處理文件,指定.exe的整個路徑,然後將System32替換為sysnative。這是一個特殊的文件夾,在Windows資源管理器中不可見,但它用作文件系統重定向器,用於從64位應用程序或腳本訪問64位System32文件夾。以下是一個示例,該示例包含一個批處理文件,該文件將調用例如ie4uinit.exe並移交參數-show:

C:\ Windows \ sysnative \ ie4uinit.exe-顯示

如果您使用的是LabVIEW 64位版本,則不必將路徑從C:\ Windows \ System32更改為C:\ Windows \ sysnative。

如果在LabVIEW環境中打開.exe時遇到問題,請嘗試使用較新版本的LabVIEW