2012-01-05 172 views
2

我使用Visual Studio 2010 Premium。我有兩個項目的解決方案。一個是主項目,後者是測試。 我的任務是構建64位平臺的主項目,並檢查測試項目是否仍爲32位平臺構建時,測試是否仍然成功。DLL相關:錯誤LNK2001:無法解析的外部符號

測試項目輸出一個依賴主項目輸出的DLL文件的EXE文件。

如果我構建64位平臺的主項目和測試項目,那麼一切都很好。 如果我建立了64位的主要項目,然後試圖建立檢測項目爲32位,我得到以下錯誤類型:

錯誤LNK2001:解析外部符號

錯誤LNK2019:無法解析的外部符號

錯誤是指在某些主項目的頭文件中聲明的函數。

是否因爲我試圖在32位版本中使用64位DLL文件?它可以修復嗎? 我再次提到,如果兩個項目都是爲64位平臺而構建的,那麼一切正常。

編輯:更具體,我會第一個複製錯誤行,我得到的前綴:

錯誤LNK2019:無法解析的外部符號「__declspec(dllimport的)公衆:__thiscall ...

回答

1

你是對的,你看到的問題可能與將64位庫鏈接到32位應用程序有關,你需要構建兩個版本的庫(32位和64位)與您的應用程序的兩個版本。

相關問題