【问题标题】:Release Build contains extra files, do I need these?Release Build 包含额外的文件,我需要这些吗?
【发布时间】:2013-03-08 10:18:39
【问题描述】:

我使用 Visual Studio 2012 Express 构建了我的程序,bin/release/ 包含一些其他文件以及 exe。我需要分发这些文件吗?

  • myApp.exe.config
  • myApp.pdb
  • myApp.vshost.exe
  • myApp.vshost.exe.config
  • myApp.vshost.exe.manifest

【问题讨论】:

    标签: c# .net windows


    【解决方案1】:

    myApp.exe > 是的

    myApp.exe.config > 是

    其他>没有

    【讨论】:

      【解决方案2】:

      你确实(可能)需要

      • myApp.exe.config

      其中包含可执行文件的配置设置。

      你不需要其他人。

      • myApp.pdb

      包含调试符号

      • myApp.vshost.*

      在调试时由 Visual Studio 使用(vshost 表示 Visual Studio 主机)。

      【讨论】:

      • 好吧,“.config”可能会也可能不会被他使用。我们真的不知道他是否在其中存储了配置数据。我知道在我的应用程序中它很少使用,尽管它是唯一一个(除了 exe 本身)有可能属于生产环境的应用程序。
      • @Servy:因此“可能”。许多应用程序至少有一个设置或一个连接字符串,但肯定不是全部。
      【解决方案3】:

      这取决于。 其他答案正确地说 myApp.exe 和 myApp.exe.config 是必不可少的选择。

      您可能还想发送 PDB 文件。如果这样做,您将有更多选项用于调试目的(例如 - 可以在引发异常的代码中记录行号)。

      可能没有任何您想要发送 vshost 文件的用例。

      但是:除了 exe 和配置之外的任何内容都可以使您的软件更容易进行逆向工程;并增加您的包裹尺寸。

      我认为大多数情况下的答案是,出于这些原因,只发布 myApp.exe 和 myApp.exe.config

      查看这些先前的问题以获取更多信息:

      Advantages and Disadvantages of Including PDB Files

      Release Version Has Still PDB File

      How To Turn Off PDB Generation

      What Is The Purpose Of vshost exe

      【讨论】:

      • 您说的是“其他文件”,但我猜您只是指 PDB?
      • @BenVoigt 是的,我想可能是这样
      【解决方案4】:

      为了在将代码部署到客户端时获得应用程序的最佳性能,您可以去掉:

      myApp.pdb

      这是一篇关于开发人员需要了解的有关 pdb 文件的好文章: https://www.wintellect.com/pdb-files-what-every-developer-must-know/

      pdb 文件用于调试目的

      【讨论】:

        猜你喜欢
        • 2021-03-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-17
        • 2018-09-09
        • 1970-01-01
        相关资源
        最近更新 更多