2012-09-06 80 views
0

在visual studio 2010 express版本中。我有一個名爲prj1的項目(一個靜態庫)。 prj1有創建對象obj1的代碼。visual studio 2010在不同項目中快速鏈接文件

在另一個項目prj2這是一個動態庫我有代碼通過「new obj1」(obj1的代碼在prj1中)來對象化。

現在,當我嘗試建立prj2我得到鏈接錯誤:

1>當我嘗試上點擊右鍵prj2->屬性 - > frameworkk,如果我添加prj1作爲新的參考我得到了很多的引用鏈接錯誤,如MSVCRTD.lib(MSVCR100D.dll):錯誤LNK2005:

2>如果我不執行上面的step1並右鍵單擊解決方案 - >屬性 - >項目依賴關係,然後選擇prj1以依賴於prj2 。然後我得到一個鏈接錯誤,抱怨說:錯誤LNK2019:無法解析的外部符號obj1 ...未解決的外部。

如果有人能幫我解決這個問題,那將是非常善良的。

感謝

回答

1

似乎您選擇運行時庫的選項不同。例如,一個項目將「多線程調試DLL」和其他項目鏈接到「多線程調試」。當您嘗試將項目鏈接到彼此時,您將獲得多個定義的運行時庫符號。

+0

我的項目都有「多線程調試」。但我仍然得到第二個錯誤。你是否建議我不這樣做。 – user1612986

+0

工作,讓他們平等後,我不得不包括增加新的參考proj1。 – user1612986

+0

更好地使用「多線程調試DLL」。這種方式可以得到更小的二進制文件 –

0

你的靜態庫必須找到/添加到您的庫目錄,並依賴列表了。

+0

這不是問題,當我在visual studio 2008中有一個類似的簡化。我不需要在2008年添加庫目錄。你是否建議我在vs2010中這樣做? – user1612986

相關問題