2011-07-05 44 views
1

64位進程是否可以加載用.net 1.1編寫的dll,儘管沒有用於framework 1.1的64位編譯器?從64位進程加載.net 1.1程序集

我有舊的.net 1.1 dll,我創建了一個簡單的64位控制檯應用程序(.net 4.0),它引用這個庫並調用一個函數,並且一切正常。

+0

所以這是一個沒有問題的權利? .NET編譯由.net CLR在運行時重新編譯的程序集,這會在x64機器,內存和運行中生成x64可執行文件。 –

回答

1

您可以將.NET 1.1程序集加載到更高版本的CLR中。您還沒有說明您的64位控制檯應用程序的目標是什麼框架,但基本上它會將您的1.1程序集加載到2.0或4.0 CLR中,而不會出現任何問題。

如果它是32位代碼的混合模式程序集,但是隻有一個純IL的程序集應該沒問題,那麼您會遇到問題(我認爲)。

+0

感謝您的快速響應,我的測試應用程序針對框架4.0。如果我理解正確 - 我的.net 4.0運行時加載.net 1.1程序集,並將其與.net 4.0編譯器一起用於64位平臺,這就是爲什麼它可以工作? – Damian

+0

@ Kall:沒錯。 –