【发布时间】:2023-03-02 23:51:01
【问题描述】:
所以 RUT.netmodule(RUT 代表罕见的使用类型)是一个文件(.netmodule),它是程序集的一部分。
假设我的客户端应用程序引用了来自RUT.netmodule 的类型,而MultiFileLibrary.dll 是一个强名称程序集,它安装在GAC 中。
因为RUT.netmodule实际上并不存在于MultiFileLibrary.dll,所以GAC不会有RUT.netmodule。
所以我的问题是,也许 CLR 被配置为检查应用程序的基目录以在知道引用的类型在不同的模块文件中之后查找 RUT.netmodule。但这也意味着RUT.netmodule 必须始终位于应用程序的基目录中,这对我来说听起来很奇怪,好像我有多个应用程序然后我需要在它们的基目录中拥有多个RUT.netmodule。是否可以在 GAC 中“安装”RUT.netmodule,或者在 GAC 中安装 MultiFileLibrary.dll 时,任何 .netmodule 文件也会被复制到 GAC 中?
【问题讨论】:
-
这能回答你的问题吗? How are DLLs loaded by the CLR?
-
@OlivierRogier 提供的所有链接都是针对 .dll 本身的,我想问的是同一程序集的其他 .netmodule 文件,
MultiFileLibrary.dll肯定可以被 CLR 发现,但是 @ 呢987654337@?
标签: c# .net clr .net-assembly