LabVIEW遠程除錯找不到應用程式

更新 Feb 16, 2024

產品資訊

軟體

  • LabVIEW

問題敘述

我在創建我的程式的執行檔時包含了遠程除錯。然而當我嘗試使用該遠程除錯功能時,不論該執行檔是在遠程電腦上或本地運行,我都在選項中找不到任何可除錯的應用程式。我能成功 ping 遠程電腦,所以我認為網絡設定是正確的。可是為什麼我無法連接到遠程運行的可除錯執行檔?

當我選擇 Operate  >> Debug Application or Shared Library...時,連接狀態中會顯示一條類似於以下訊息: “No debuggable application or runtime libraries found”。
沒有可調試的應用程序.png

解決方案

無法遠程除錯運行中的執行檔有很多原因,請參考以下步驟:
  • 確保您用於遠程除錯的 LabVIEW 開發環境的版本與運行執行檔的Run-Time Engine (RTE) 的版本相同。使用的 Run-Time Engine 版本會在 URL 欄中註明,例如National Instruments/LabVIEW/Built Application/ 22.0 /RemoteDebug/Application.exe表示使用的是 Run-Time Engine 版本 22。
注意:如果應用程式在創建時有選擇Allow future versions of the LabVIEW Runtime to run this application選項,則將使用該電腦已安裝的最新的bit-compatible版本的RTE。如果在創建過程中禁用此選項,將使用與創建環境對應的 RTE 版本。
  • NI Service Locator 需要在遠程電腦上運行以管理應用程式將使用的動態port。在遠程電腦上的瀏覽器中導航到 http://localhost:3580/dumpinfo?應該會顯示當前狀態。如果瀏覽器返回“Page not Found”,則Service Locator可能沒有運行。如果是這種情況,請按照這個知識庫的步驟進行啟動 NI Service Locator
  • 確保將整個應用程式文件夾複製到遠程電腦。當應用程式在允許debugging的情況下構建時,會在此文件夾中創建一個 INI 檔,其中會包含啟用遠程除錯服務器的設定。此 INI 檔需要與共享庫或應用程式一起提供。
  • NI Service Locator 需要開放port 3580 的incoming通訊。如果您使用防火牆,您需要確保將此port添加為例外。
  • 確保Windows® 防火牆允許在部署電腦中運行的執行檔進行通訊。應用程式將從Windows® 默認範圍內動態選擇一個port。使用的Port可以查看 Service Locator 頁面中的“mapping=”後面的數字。