2013-07-19 52 views
0

我正在尋找建立新VS2012 C#項目的最佳方法的建議。我想要定位x86和x64架構。但是,我有第三方DLL,我必須參考。有兩個版本提供相同的DLL;一個爲x86和x64編譯。這就是說,我需要專門針對x86和x64?我不認爲AnyCPU或新的AnyCPU32bit優先適用於我的情況。另外,在同一個項目中引用DLL的正確方法是什麼(它們具有相同的名稱,但一個是32位,另一個是64位)。謝謝。VS2012在x86,x64,AnyCPU,AnyCPU32bit優選和引用第三方DLL之間進行選擇

回答

0

您的項目設置應該集中在「目標」計算機上,而不是在編譯計算機上。如果你的目標系統是32位的,那麼你應該參考x86版本的第三方庫,換句話說,如果你的目標計算機是64位,那麼你應該參考x64版本。 您不應該/不能將這兩個庫引用到同一個項目中。在任何情況下,您都可以維護您的項目的兩個並行版本,它們僅在參考部分中有所不同。 如果你需要創建64安裝程序,那麼你可能也檢查這個問題的答案:當你不重新分配的第三方的DLL BadImageFormatException x64 Issue

AnyCPU可能是有用的,你asume他們目標系統上進行了安裝previouly ,並且您的開發不需要/使用任何x64集的特殊功能。在這種情況下,您的代碼將以它們安裝的格式invoque第三方DLL。