在没有安装程序的情况下发布Windows窗体项目

本文关键字:Windows 窗体 项目 情况下 安装 程序 | 更新日期: 2023-09-27 18:15:43

我已经根据发布配置文件进行了构建,这在我的项目的release目录中创建了一个可执行的构建。

我如何最好地从这个可执行文件分发到客户端?这个文件夹中有很多文件在通过安装程序安装时不会出现,例如mainifest和一个名为application.exe.xml的文件(当Windows在Windows资源管理器中隐藏扩展名时,它会令人困惑)。

这些都是必要的吗?我可以直接发送可执行文件吗?还是我需要把所有的文件一起发送?有没有办法在不使用这些文件的情况下进行构建?

在没有安装程序的情况下发布Windows窗体项目

您必须发送您在本地引用的EXE文件和任何DLL文件。如果使用COM引用等,则需要在安装过程中注册它们。我认为GAC也是如此,但我自己还没有在独立应用程序中使用过它。

application.exe。Config 文件包含应用程序设置(app.config的副本)。如果不使用设置,或者用户通常不关心设置,则可以省略该文件,它将使用构建应用程序时使用的默认值。

不需要vshost文件(如果有的话)。它们由Visual Studio的调试器使用。pdb文件包含用于促进DLL文件到源匹配的调试数据。除非您计划将调试器附加到应用程序中,否则发送这些调试器是没有意义的。

通常,在XCopy部署中,您必须部署(字面上复制所有文件部署,没有安装/安装程序)输出文件夹(如debug或release)的内容,而没有:

  • *。pdb -调试符号
  • *.xml - xml文档
  • vshost ?- Visual Studio主机文件

实际上,它还取决于您的特定应用程序。作为开发者,你需要知道自己在制作什么;如果您使用的xml文件不是. net文档编译器的结果,而是复制在输出文件夹中的静态文件,那么不要忘记部署它。

最后提示:开发人员通常会禁用在Windows资源管理器中隐藏文件扩展名的选项;-)

您需要了解安装程序是做什么的,或者为什么安装程序很重要。

安装程序负责基本环境。安装程序可以在应用程序中携带相关的程序集/模块。它还可以在运行之前检查您是否需要某些东西,比如目标机器上的。net。它还可以在桌面或开始菜单上创建快捷方式。此外,它还在目标机器上提供了足够的选项来卸载它。

如果您希望单独发布可执行文件,您可能会错过可执行文件所依赖的一些程序集。目标机器可能没有安装正确的。net版本

使用程序:HM NIS EDIT from HM Soft

  • 构建项目
  • 运行NIS编辑
  • 从向导中创建一个新脚本(Ctrl + W)
  • 运行所有步骤
  • 选择所有的。dll和。exe文件
  • 构建安装文件