From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



在LabWindows/CVI呼叫DLL檔時出現連結錯誤



主要軟體:
主要軟體版本: 8.0
主要軟體修正版本:
次要軟體: LabWindows/CVI Development Systems>>Base Package

問題:

我在LabWindows/CVIworkspace中已經將我的DLL的函式庫 (.lib) 和header (.h) 連結。但是,在我Build的時候還是出現了一個連接錯誤。這是為什麼?



解答:
首先請再次確認您已經把header檔和函式庫檔加入到您的workspace裏面了(請參考LabWindows/CVI裏面的Project Tree。 如果他們其中有檔案遺失,通過選擇Edit »Add Files to Project或者在Project Tree中右鍵選中檔案名,然後選擇Add File...來將它們添加到您的workspace裡面.

如果上面的這些檔已經包含進來,第二個可能的原因就是編譯器的呼叫協定的問題。 內定(default)的呼叫協定在Options » Build Options選單下面設置,如下圖。
 
 


對於這兩個編譯器,內定(default)的呼叫協定是__cdecl,但是可以改成__stdcall。如果你打算給這兩個外部編譯器生成靜態函式庫(Static Library)或者Object File的話,不要把內定(default)的呼叫協定改成__stdcall。

如果您不確定DLL的呼叫協定,請聯繫DLL的作者或者試一試其他的呼叫協定。

相關連結: KnowledgeBase 2RCKK3TL: Calling Conventions in LabWindows/CVI


附加檔案:


BuildOptions.GIF - BuildOptions.GIF



報告日期: 04/10/2006
最後更新: 07/10/2007
文件偏號: 3W9DPTG2