NI-IMAQdx Runtime是什麼? 為什麼我在執行檔裡控件中的Session是失效的。



主要軟體: Driver Software>>Vision Acquisition Software
主要軟體版本: August 2014 f1
主要軟體修正版本: N/A
次要軟體: N/A

問題: 我有一個使用NI-IMAQdx 14的執行檔,當我試著要為這個執行檔製作一個安裝檔的時候,為什麼我無法選擇包含NI-IMAQdx? 此外,當我執行我的執行檔時,為什麼在Session控件的下拉式選單功能中,我想要選擇的相機是失效的?


解答: 在比Vision Acquisition Software (VAS) August 2014更早的版本,這些給VAS的附加安裝檔,例如NI-IMAQdx,不只包含runtime的元件,也包含了LabVIEW應用開發的支援。在VAS August 2014或之後的版本,我們現在只允許佈署端擁有runtime的元件而已,如此就有明顯降低了安裝檔的大小的優點,但是再也不能把LabVIEW 應用開發支援(ADE)的功能包含在安裝檔中。在底下有一個螢幕截圖告訴您LabVIEW Run-Time Engine and NI-IMAQdx Runtime在視覺應用的安裝檔中式自動被選擇的。

這個改變使得LabVIEW視覺的行為與其他大部分的NI產品一致,也就是除了runtime的元件以外,您沒辦法對一個產品佈署完整的開發支援。如果您需要在您的佈署機器上安裝有ADE支援的VAS,除了LabVIEW (用來使用VAS ADE支援)以外,您會需要在那個機器上安裝完整的VAS安裝檔。想要自動地達到這個目的,您必須要寫一個batch檔案來執行LabVIEW以及NI-IMAQdx安裝檔。

在您的執行檔中,Session的下拉式enum選單失效也是一個被視為VAS 2014 runtimes合理的反應,因為這是一個只有在VAS ADE支援有被安裝時才會支援的功能。這並不代表驅動程式(driver)沒辦法找到相機,在這種情況下您可以靠著在Session控件中直接輸入相機名字來測試(例如"cam0"是給在系統中第一個找到的相機名字)。

這個刻意產生在視覺應用佈署情形,是為了要簡化對使用者而言太過複雜的選擇過程。在理想狀況下,您的程式碼應該使用IMAQdx Enumerate Cameras VI來自動列舉(enumerate)相機們,然後決定哪個相機來當使用的目標(基於通道的格式、序號、型號之類的)。

如果您的應用需要讓終端使用者來選擇相機,靠著使用IMAQdx Enumerate Cameras VI以及Combo Box的Strings[] property,可以用Combo Box把安裝在您系統中的相機名字列舉出來。您可以在下面的VI截圖看到這個方法。



相關連結: White Paper: Distributing Applications with the LabVIEW Application Builder
KnowledgeBase 2A6ECPG4: How Can I Include Additional Installers with My LabVIEW Applications' Installer?
Drivers and Updates: Vision Acquisition Software
KnowledgeBase 2WCDS3DI: Creating a Batch File

附加檔案:





報告日期: 09/05/2014
最後更新: 12/12/2014
文件偏號: 6P4HS5NN