2013-01-18 18 views
0

我很困惑應該選擇目標平臺的設置,以使我的應用程序能夠在所有計算機上運行,​​而不管處理器類型如何。我試過所有的CPU,但在幾臺電腦上無法使用。目標平臺,所有CPU或X86差異

感謝

+1

您嘗試過哪種類型的計算機? – Cris

回答

1

x86作品的32位操作系統,以及對64位操作系統,同樣爲AnyCPU。那麼區別是什麼呢?
區別在於JIT編譯器在目標計算機上發出應用程序代碼的方式。

當您使用x86 platform JIT發出的代碼始終是一個32位代碼,也是在64位系統上。
這可能是一個問題,如果你沒有安裝你的應用程序所需的正確的32驅動程序/ DLL(Microsoft.ACE.OleDB是這些有問題的庫之一)。相反,當您使用AnyCPU platform時,JIT將在32位系統上發射32位代碼,在64位系統上發射64位代碼。這比x86更成問題,因爲您需要兩個系統的正確驅動程序。所以我懷疑你的應用程序在某些系統上失敗的原因是由於你的應用程序缺少正確的(對於系統位)庫。

在懷疑我認爲更好的使用x86平臺,除非您對64位系統有特別的要求。