您好、欢迎来到现金彩票网!
当前位置:大赢家 > 附属程序集 >

反射(3)程序集加载 Assembly类

发布时间:2019-04-25 12:10 来源:未知 编辑:admin

  应用程序的构造块;程序集构成了部署、版本控制、重复使用、激活范围控制和安全权限的基本单元。

  公共语言运行时类加载程序不能通过正常方法解析对程序集的内部模块的引用时发生。如使用LoadFile(Path)、只反射加载等加载程序集,不会加载依赖程序集。

  获取最初指定的程序集的位置,例如,在AssemblyName对象中指定的位置。

  如果程序集是使用Load(byte[])重载作为字节数组加载的,则此属性返回该方法的调用方的位置,而不是已加载程序集的位置。

  对于网络服务器上的目标文件,可使用“通用命名约定(UNC)”地址(UNC:“统一命名约定”地址,用于确定保存在网络服务器上的文件位置)。这些地址以“file:\\”开始并提供服务器名、共享名和文件的完整路径。例如,“file:\\server\share\path\project file.mpp”是绝对UNC地址。

  获取一个值,该值指示当前程序集是否是通过使用反射发出在当前进程中动态生成的。动态程序集由派生类System.Reflection.Emit.AssemblyBuilder表示;将动态程序集保存到磁盘后,该程序集就不再是动态的。

  从此程序集中查找指定的类型,并使用系统激活器( Activator.CreateInstance )创建它的实例。

  如果调用GetCallingAssembly方法的方法由实时(JIT)编译器内联扩展,或如果其调用方将内联扩展,则由GetCallingAssembly返回的程序集可能会发生异常。例如,考虑下列方法和程序集:

  获取默认应用程序域中的进程可执行文件。在其他的应用程序域中,这是由AppDomain.ExecuteAssembly执行的第一个可执行文件。

  如果一个非托管应用程序创建了使用C#编写的一个COM组件的实例,则从该C#组件调用GetEntryAssembly方法将返回null,因为该进程的入口点是非托管代码而不是托管程序集。

  附属程序集包含本地化的资源,这与主应用程序程序集有所不同,主应用程序程序集包含不可本地化的可执行代码和只用于默认或非特定区域性的资源。

  获取此程序集中定义的公共类型,这些公共类型在程序集外可见。只有公共类型以及嵌套在其他公共类型中的公共类型才在程序集外可见。

http://ccsagresso.com/fushuchengxuji/10.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有