2010-11-16 65 views
11

我有一個來自供應商的32位和64位.NET程序集。他們有完全相同的接口(相同的類,相同的方法等)不同的.NET程序集引用取決於32-64位

由於某種原因,我永遠不能在另一個平臺上運行一種類型。到目前爲止我所做的只是刪除引用,然後根據需要重新編譯。

有沒有更簡單的方法來做到這一點?

編輯

我想SVN可共同選擇以某種方式解決這個問題?

編輯

該組件不在GAC中。此外,還需要這樣做,因爲我在兩個平臺上構建了相同的程序,而不是嘗試在另一個平臺上運行構建在一個平臺上的內容。

回答

1

您不能使用混合裝配具有相同的應用程序。您只能使用相同類型的assassembly x86或x64。

您不能在32位操作系統上運行x64應用程序,但可能在其他地方運行x64應用程序。

1

告訴您的供應商使用AnyCPU標誌進行編譯,並以編程方式提取所有依賴於平臺的內部呼叫,而不是要求消費者爲他們做。

如果他們不這樣做,你可以使用反射來編寫自己的代理,但我不推薦它。隨着時間的推移維護該組件將是一個痛苦。

+0

這第二EDIT(「我建立了相同的程序在兩個平臺上」)是一個重要的;它使我的開發RAWR時刻無效;) – xcud 2010-11-16 16:00:58

相關問題