2010-03-05 76 views
1

給定一個用.NET編寫的比較大的本土框架。對於額外的低優先級功能,我們希望使用第三方開源項目。但是,這個第三方項目在x64模式下運行並不安全,所以我們強制它編譯32位。由於這個被引用的32位程序集,VS希望我們的整個框架通過級聯依賴被編譯爲32位。分離強制的32位程序集

問題1:有沒有辦法隔離框架的其餘部分,並允許它編譯到任何平臺? Question2:假設我的框架以x64模式運行,並且在運行時加載強制的32位程序集。這樣做還是會拋出AssemlyLoadWhateverException?

回答

1

答案:

  1. 如果沒有引用的程序集的只有32位的只能作爲編譯任何平臺。
    您可以使用Assembly.LoadFrom加載僅限32位的程序集,並使用Reflection調用它,並仍編譯到任何平臺。

  2. 這是行不通的。 編輯:它似乎工作;我不知道爲什麼。