我有一个用 C# 编写的应用程序,它使用供应商提供的 .Net 程序集与一些自定义硬件接口。.Net 程序集又在运行时加载另一个 DLL。我可以将供应商提供的程序集添加到我的项目中,但是当我运行它时,供应商程序集抱怨它无法加载所需的 DLL。我暂时可以通过将 DLL 复制到 bin\Debug 和 bin\Release 文件夹来解决这个问题。
问题是我需要在某个时候将这个应用程序分发给客户端,而他们不会有这个 DLL。我看不出如何使解决方案需要它;我无法将其添加为引用,因为我收到错误“无法添加对 foo.dll 的引用。请确保该文件可访问,并且它是有效的程序集或 COM 组件。”
我无法使用 TlbExp 将 DLL 转换为 .Net 程序集,它会给出错误“模块应包含程序集清单”。
我想如果我通过“单击一次”发布应用程序,我可以在那里声明依赖关系,但我也看不到任何方法。我也尝试将其添加为文件资源,但这似乎没有帮助。
我可以看到关于如何在外部 DLL 中调用功能的其他问题,但在这种情况下,我只需要一种将 DLL 与项目捆绑在一起的方法。
谢谢。