2011-03-31 131 views
0

我們有一個使用第三方組件的舊.net 1.1項目。實際上,該組件不能滿足新的要求,並且沒有提供商的支持。提供者建議使用正常工作的新組件。問題是這個組件需要.net 2.0。.net 1.1應用程序如何使用.net 2.0程序集

這個項目很大,將這個項目移動到2.0的成本很高。

我們可以有其他的替代方案嗎? 1.1程序集如何調用2.0程序集?

回答

2

.NET 1.1無法加載.NET 2.0程序集,因爲內部格式已更改。您的應用程序基本上會認爲該程序集不是.NET程序集。從長遠來看,更新應用程序以使用.NET 2.0(如果不是更新的話,因爲自2.0以來有多個.NET版本)將是一個不錯的主意。但是,如果這不是一個選項,您可以爲您的可執行文件創建一個.config文件,並告訴CLR在運行您的應用程序時始終使用.NET 2.0。這應該允許加載.NET 2.0程序集,但是,您的應用程序使用的.NET 1.1和2.0之間的任何中斷更改都會導致錯誤。

+0

你是否認爲圍繞2.0程序集創建具有所需功能的包裝對象並將其作爲COM DLL公開是一個好主意? – baraban 2011-03-31 18:40:20

+0

@ user976536我不認爲這會起作用。在.NET 4.0之前,一個進程只能運行1個CLR。如果您嘗試從.NET 1.1應用程序加載COM對象,則它必須加載.NET 2.0才能加載.NET 2.0程序集。這會給你一個錯誤,因爲.NET 1.1 CLR已經加載到進程中。 – Andy 2011-03-31 18:43:36

相關問題