c# – 如何通过Windows Phone 8中的Assembly.Load动态加载程序集?
作者:互联网
现在我有一个问题,我想动态加载程序集依赖于平台(x86,ARM).我创建一个条件编译符号_M_ARM来区分x86和ARM.
所以我使用System.Reflection.Assembly.LoadFrom(@“MP3 / ARM / Mp3EncLib.dll”),但发生了一个例外,即Windows Phone上不支持Assembly.LoadFrom.
所以我使用另一种方法System.Reflection.Assembly.Load(@“MP3 / ARM / Mp3EncLib.dll”),但它抛出异常,这是
Additional information: Could not load file or assembly
‘MP3/ARM/Mp3EncLib.dll, Culture=neutral, PublicKeyToken=null’ or one
of its dependencies. The given assembly name or codebase was invalid
private void Application_Launching(object sender, LaunchingEventArgs e)
{
#if _M_ARM
System.Reflection.Assembly.Load(@"MP3/ARM/Mp3EncLib.dll");
#else
System.Reflection.Assembly.Load(@"MP3/X86/Mp3EncLib.dll");
#endif
}
这是我的解决方案
任何人都知道如何使用该方法.或者更好的方式
解决方法:
我相信你必须完全限定程序集,如SomeCompany.SomeNamespace,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null.
标签:c,net,net-assembly,windows-phone-8,dllimport 来源: https://codeday.me/bug/20190708/1405768.html