我有一個項目(C#Exe),其平臺目標是x86。它包含不同第三方庫的參考。我正在考慮將應用程序從x86轉移到AnyCPU或x64。項目引用包含32位或64位
現在我面臨的問題是,我不知道引用庫是建立在x86或任何其他。一種方法是我逐個檢查第三方庫並檢查它們的平臺目標(一個長度過程,因爲它包含超過50個參考)。
他們有沒有辦法找到依賴庫是x86或x64或其他。
我有一個項目(C#Exe),其平臺目標是x86。它包含不同第三方庫的參考。我正在考慮將應用程序從x86轉移到AnyCPU或x64。項目引用包含32位或64位
現在我面臨的問題是,我不知道引用庫是建立在x86或任何其他。一種方法是我逐個檢查第三方庫並檢查它們的平臺目標(一個長度過程,因爲它包含超過50個參考)。
他們有沒有辦法找到依賴庫是x86或x64或其他。
您可以使用GetAssemblyName方法檢索AssemblyName類型,其中有ProcessorArchitecture屬性可提供該信息。
這列舉了加載到進程中的本地DLL(COM interop,p/invoke)?這些是最有可能沒有64位等價物的那些。 –
不這麼認爲,Native DLL沒有任何清單信息,可以通過Reflection來恢復。 – Tigran
請參閱:http://stackoverflow.com/questions/480696/how-to-find-if-native-dll-is-compiled-as-x64-or-x86(應該也適用於非託管) – atlaste