Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xaml 如何避免在TFS 2012生成结果中包含(或删除)PDB文件_Xaml_Tfsbuild - Fatal编程技术网

Xaml 如何避免在TFS 2012生成结果中包含(或删除)PDB文件

Xaml 如何避免在TFS 2012生成结果中包含(或删除)PDB文件,xaml,tfsbuild,Xaml,Tfsbuild,使用Visual Studio 2012(和TFS 2012服务器)中的DefaultTemplate时,PDB文件包含在生成目录中。我不想要它们 有没有一种方法在构建过程中不生成这些文件 或 如何删除这些文件 我想删除,但似乎有点奇怪(没有删除活动?) 也有但不涉及XAML模板 提前感谢您的帮助。因为我找不到禁用PDB文件生成的构建选项,所以我随后将其删除 删除文件没有简单的方法。我做到了: 使用带有通配符*.pdb的 pdb文件的完整路径 使用Foreach循环 在具有InvokeMetho

使用Visual Studio 2012(和TFS 2012服务器)中的DefaultTemplate时,PDB文件包含在生成目录中。我不想要它们

有没有一种方法在构建过程中不生成这些文件

如何删除这些文件

我想删除,但似乎有点奇怪(没有删除活动?) 也有但不涉及XAML模板


提前感谢您的帮助。

因为我找不到禁用PDB文件生成的构建选项,所以我随后将其删除

删除文件没有简单的方法。我做到了:

  • 使用带有通配符*.pdb的 pdb文件的完整路径
  • 使用Foreach循环
  • 在具有InvokeMethod活动的每个文件的循环中, 目标类型为System.IO.File且方法为“Delete”

  • PDB文件包含代码的调试信息,不建议禁用它们,它们是有效的输出,因此部署不应该干扰它们。 您可以在Visual Studio项目属性>生成>高级>调试信息=无中禁用它们的生成。
    如果您绝对想让它们消失,请禁用它们以进行特定于生成的配置(relaese等)。

    默认情况下,生成服务器会执行解决方案(sln)告诉它的任何操作。默认情况下,这是执行“调试”构建,并创建PDB。您可以告诉构建执行默认情况下不会创建任何PDB的“发布”构建

    图:添加生成配置

    但是,我建议您不要使用它,因为PDB包含您甚至在生产系统中也需要的信息。考虑一下你在生产中有一个DLL,客户遇到了问题。你让他们创建一个InteliTrace日志,这样你就可以在本地调试它(或者他们让你在他们的环境中调试),突然,你试图在Visual Studio不了解可执行文件和源代码之间的关系的情况下进行调试。因此,在以前的版本(Visual Studio 2010)中没有调试…

    当我们构建/release时,它没有生成PDB,当我们仅使用/debug:full/debug:pdbonly构建PDB文件时,我们使用/debug:pdbonly如果我们想要为不希望调试的发布版本生成PDB

    在Visual Studio 2012中并非如此,我检查了它,发现它在/debug/release中都生成了PDB


    没有VisualStudio 2012的文档

    对Hinsh先生答案的完美补充。但只有一个官方答案是可能的。。。我不得不选择。谢谢。请注意,配置的默认值可能不同(不确定原因),因为M.Radwan-MVP声明他的VS2012版本启用了pdb,与我的VS2010 relaese配置相同,仅设置了pdb。在所有情况下创建pdb都是正确的行为,因为没有它,您将无法使用InteliTrace…对于那些包含臃肿pdb文件的第三方库,您永远也不会调试它们。只有您自己添加它们,它们才会出现。生成不会为第三方dll创建PDB。。。