ClickOnce 部署的应用程序找不到外部 DLL

ClickOnce deployed application can't find external DLL

我有一个使用外部 dll 文件 (Winppla.dll) 的 WinForms 应用程序,因此我可以在我的 Argox 打印机中打印标签。由于我无法将 dll 文件添加为对项目的引用,因此我在 class 上使用了命令 [DllImport("Winppla.dll")]。 当我 运行 在 Visual Studio 中的项目时,它工作得很好。 然后我使用 ClickOnce 发布了我的应用程序,当我尝试 运行 应用程序时,我收到消息错误,指出找不到 Winppla.dll,即使我正在 运行 上我的机器。

我试过:

但其中 none 有效。

该项目也使用了 SAP CrystalReports,并且运行良好。

关于如何让它发挥作用有什么想法吗?

按照问题评论区@Bearcat9425的说明,终于解决了问题:

  1. 将文件复制到项目文件夹并将其包含在项目中 (在解决方案资源管理器上,单击 'Show All Files',然后右键单击文件和 select 'Include In Project')
  2. 在我的发布选项卡上将文件标记为应用程序文件之一 (右键单击我的项目和 select 'Properties',然后转到发布选项卡并单击 'Application Files' 并确保 Winppla.dll 标记为 'Include')
  3. 将 Winppla.dll 文件复制到我们服务器中的一个共享文件夹(我把它放在我放置应用程序设置的同一文件夹中)
  4. 在每个 DllImport 命令中写入文件共享位置的完整路径:[DllImport(@"\the-path-on-the-server\Winppla.dll")]
  5. 发布!