【问题标题】:Folder in bin/debug not copying to output directorybin/debug 中的文件夹未复制到输出目录
【发布时间】:2013-12-16 11:47:18
【问题描述】:

我开发了一个使用 geckofx22.0xulrunnerwinform 应用程序。所以在这里我需要将 xulrunner 文件夹复制到 bin 。所以我做到了,而且这个程序很酷。但问题是当我发布这个项目时,它不会复制输出目录中的xulrunner 文件夹并导致应用程序崩溃。 xulrunner 文件夹包含一些 dll 文件和 txt ,这需要运行和启动 geckofx 。有人可以帮忙吗?我怎样才能让 clickoneapplication 可以引用这个 xulrunner 文件夹? 我已经按照我的项目初​​始化了 xulrunner 文件夹,它运行良好。

 Gecko.Xpcom.Initialize(AppDomain.CurrentDomain.BaseDirectory + "/xulrunner");

【问题讨论】:

    标签: c# clickonce xulrunner geckofx output-directory


    【解决方案1】:

    将您的xulrunner 文件夹复制到项目中。将项目中每个文件的属性设置为Build ActioncontentCopy to Output DirecotryCopy if newerCopy always。然后构建您的应用程序。当您在这些步骤之后发布时,您的 xulrunner 将部署在输出目录中,因此您可以执行 ClickOnce 应用程序而不会出现任何错误。

    【讨论】:

      【解决方案2】:

      您已下载外部包 (DLLS) 并在您的项目中使用它们。
      添加对 DLL 的引用时,应设置 Copy local = true (除非它们在 GAC 或其他方式中)

      这可确保在您构建项目时,所有引用的 DLL 都将被复制到构建输出文件夹中。

      您下载的软件包中的所有 dll 和文件是否都已复制?您需要知道,如果构建器仅复制引用的 DLL,那么您可能希望发布包含 DLL 的项目(否则当它尝试使用文件夹中不存在的文件时,它将在运行时失败)。

      【讨论】:

      • 我引用了一些复制到输出目录的 dll 文件,但我没有引用 xulrunner 中的任何 ddl 文件,我正在设置程序中提到的那个 xulrunner 文件夹的路径。如果您正确理解我的问题,您就会知道,当我将项目转换为 clickonce 应用程序时,我只需将该文件夹复制到输出目录。
      • 你如何知道 Gecko.Xpcom.Initialize 是什么?因为它被引用了。
      猜你喜欢
      • 2020-04-06
      • 2016-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 2017-11-29
      相关资源
      最近更新 更多