Assembly.GetExportedTypes() 在 .NET 4.0 中不起作用(相同的代码在 3.5 中运行)

本文关键字:代码 运行 不起作用 NET GetExportedTypes Assembly | 更新日期: 2023-09-27 18:37:08

嘿伙计们(

和女孩们)我在.NET 4.0中使用Assembly GetExportedTypes()时遇到问题。相同的代码在面向较旧 .NET 版本的项目中完美运行。

注意:*该代码适用于本地程序集,但是当尝试从网络驱动器打开它们时,它不起作用,这是我的问题...它看起来正在加载程序集,但它声称在使用 GetExportedTypes() 时找不到它。同样,如果我从我的机器上打开一个 dll,它可以工作,此错误仅发生在位于网络驱动器上的 dll *

编辑:错误在获取导出类型上引发

守则:

        Assembly assembly;
        Type[] t;
        assembly = Assembly.LoadFrom(dllPathOpenFileDialog.FileName.ToString());
        t = assembly.GetExportedTypes();

错误:无法加载文件或程序集"*..***.***.、版本=1.0.0.0、区域性=中性、公钥令牌=空'或其依赖项之一。系统找不到指定的文件。

(我用星号隐藏个人信息 - 文件名)

Assembly.GetExportedTypes() 在 .NET 4.0 中不起作用(相同的代码在 3.5 中运行)

某些安全策略的处理方式在 .NET 4.0 中已更改。本文应提供一些背景信息。