【发布时间】:2010-04-22 00:34:09
【问题描述】:
我创建了一个可供多个应用程序使用的 dll,并创建了一个安装程序包,将其安装到程序文件中,并将其添加到全局程序集缓存中。
dll 本身使用 log4net,并且需要一个用于日志定义的 xml 文件。
因此,当安装程序运行时,以下文件会被复制到程序文件中的安装目录中: 我开发的主要dll - Log4Net.dll - Log4Net.xml 文件
我现在遇到了一个问题。我为实验创建了一个测试控制台应用程序。我已添加我的 dll 作为参考,并将“本地副本”标志设置为 false。
但是,当我编译测试控制台 exe 时,我注意到它已将 log4net.dll 和 log4net.xml 文件复制到 bin 目录中。并且在运行测试控制台时,它似乎只有在 log4net.dll 与 exe 位于同一目录中时才会起作用。尽管测试控制台应用程序不使用 log4net,但只有作为参考添加的 dll 使用。
有没有办法让所使用的 log4net.dll 和 xml 文件成为安装到程序文件中的文件,而不是复制本地副本所需的任何应用程序?将使用我的 dll 的应用程序不会使用 log4net,只有它们引用的 dll 使用它。
非常感谢
【问题讨论】:
标签: c# inheritance dll