2011-07-05 48 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:没错。 –