【发布时间】:2012-01-10 22:43:54
【问题描述】:
我有以下情况:我有一个 Windows 服务,它使用 Microsoft AddIn 框架将许多外部 .dll 作为加载项加载。 AddIn .dll 各自位于“AddIns”目录内的各自目录中,该目录位于包含服务 exe 的目录中。每个 AddIn .dll 都引用一个公共程序集,该程序集基本上是 AddIns 的 API。我把它放在服务目录中。我遇到的问题是 API .dll 也必须在每个 AddIn 目录中,否则我会收到错误:
调用的目标已抛出异常。 - System.IO.FileNotFoundException:无法加载文件或程序集“OSAE.API,版本=1.0.0.0,文化=中性,PublicKeyToken=null”或其依赖项之一。系统找不到指定的文件。
我还尝试将此程序集添加到 GAC,它似乎将其放在 C:\Windows\Microsoft.NET\assembly\GAC_MSIL\OSAE.API\v4.0_1.0.0.0__f47a6446f36f79f7,但这似乎没有帮助。
如何让插件在特定目录中查找程序集,或者将其设置在全局可访问的位置?
【问题讨论】: