C# 我可以使用AppDomain.AssemblyResolve事件重定向失败的程序集加载吗?

C# 我可以使用AppDomain.AssemblyResolve事件重定向失败的程序集加载吗?,c#,reflection,assemblies,C#,Reflection,Assemblies,默认情况下,我的应用程序引用一个混合模式DLL,所以这个DLL是32位和64位的。在32位系统上,我的应用程序是MSIL并加载32位DLL。在64位系统上,我的应用程序加载64位 但是在64位系统上,在我引用的程序集的旧版本中,他们只创建了32位版本。所以我无法加载这个。我正在考虑动态地执行它,理想情况下,我希望我的MSIL应用程序在64位模式下加载32位DLL。这可能吗 另外,将其解析为与我引用的版本不同的版本也很好 非常感谢您的帮助。您无法将32位DLL加载到64位进程中。“任何CPU”程序

默认情况下,我的应用程序引用一个混合模式DLL,所以这个DLL是32位和64位的。在32位系统上,我的应用程序是MSIL并加载32位DLL。在64位系统上,我的应用程序加载64位

但是在64位系统上,在我引用的程序集的旧版本中,他们只创建了32位版本。所以我无法加载这个。我正在考虑动态地执行它,理想情况下,我希望我的MSIL应用程序在64位模式下加载32位DLL。这可能吗

另外,将其解析为与我引用的版本不同的版本也很好


非常感谢您的帮助。

您无法将32位DLL加载到64位进程中。“任何CPU”程序集都可以工作,因为JIT在执行之前处理IL编译,从而创建适当类型的本机映像;特定于CPU的程序集不支持对不同类型的JIT

,而不是CLR限制