【问题标题】:Deployment of Visual Studio solution containing dll project and exe project部署包含 dll 项目和 exe 项目的 Visual Studio 解决方案
【发布时间】:2011-10-16 23:21:00
【问题描述】:

我有一个包含 3 个项目的 Visual Studio 2010 解决方案:一个 dll 项目、一个可执行项目和安装程序项目。

我正在同时处理 dll 和可执行文件。可执行文件只是库的前端。在 Visual Studio 中开发这两个时,我只是从可执行文件中添加了对 dll 项目的引用,它工作正常。

我遇到的问题是部署。理想情况下,dll 将被编译并安装在可执行文件的子目录中。为我的安装程序使用“Visual Studio 安装程序 - 安装向导”项目模板似乎并没有为我提供所需的选项。

在不同的项目中开发我的后端和前端是否会解决这个问题?我应该采取哪些步骤来部署已编译的 dll 以及可执行文件?我可能做错了,所以如果这看起来倒退,请帮助我理解更好的方法。对于我在大学里学到的所有编程知识,当我真正想要部署我的软件时,没有人会复习我所做的事情。

【问题讨论】:

    标签: c# visual-studio deployment


    【解决方案1】:

    由于 DLL 项目是从 EXE 项目中显式引用的,它会自动复制到 EXE 的构建文件夹(即 bin\Debug 或 bin\Release)中,并被视为 EXE 项目“主要输出”的一部分。因此,您只需从安装项目中引用 EXE。

    已安装的 DLL 将与 EXE 位于同一文件夹中。如果开发机器上没有 DLL,为什么要将 DLL 安装在用户机器上的不同文件夹中?如果你是动态加载它并使用反射,那么不要从 EXE 中引用它,而是从安装项目中引用它,这样你就可以设置任何你想要的目标文件夹。

    【讨论】:

    • 是的,我明白你的意思。我不需要任何特定目录中的 dll - 我只是运行了构建/安装并成功地将 dll 和可执行文件安装在同一目录中,这很好。现在唯一的问题是从开始菜单启动我的程序会产生一个错误,即 Windows“无法加载文件或程序集 'SimTools,版本 1.0.0.0 等,或其依赖项之一。系统找不到指定的文件。”但是请注意,如果我在资源管理器中浏览到可执行文件,我可以运行该程序并且它可以正常运行。
    • 我也解决了这个问题,这只是我的快捷方式实际指向的问题。 Visual Studio 看起来非常强大,但构建过程似乎相当复杂。
    【解决方案2】:

    这是你需要做的。

    在您的解决方案上创建新项目 > 其他项目类型 > 单击设置和部署

    在应用程序文件夹上 > 右键单击​​ > 然后添加您的前端应用程序 > 构建。

    Check this

    问候

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-25
      • 2023-03-05
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      • 2013-05-29
      • 2011-01-09
      相关资源
      最近更新 更多