【问题标题】:Changing the Default "Copy to Output Directory" Setting for Text Files更改文本文件的默认“复制到输出目录”设置
【发布时间】:2009-12-04 21:55:06
【问题描述】:

有谁知道是否有办法在 Visual Studio 2008 中更改文件类型的默认“复制到输出目录”设置?

我经常将文本文件添加到我的项目中。它们可以是自述文件、一些使用信息或应用程序在运行时实际使用的测试文件中的任何内容。

但我从来没有添加过我不想在构建时将其复制到输出目录的文本文件。

我总是希望它们被复制,但我经常忘记更改设置(特别是如果我要添加一堆,就像测试文件一样)。我想为 Visual Studio 设置默认值,以便始终将所有 .txt 文件复制到输出文件夹。

有谁知道是否有办法永久更改 .txt 文件的默认设置,以便始终复制它们?

【问题讨论】:

    标签: visual-studio-2008


    【解决方案1】:

    我还没有实际测试过,但是如果您使用 Visual Studio 2010 或更新版本(即 MSBuild 4.0 或更新版本),您可以尝试将 ItemDefinitionGroup 添加到项目文件中,就像它们在 C++ 项目中使用的一样(.vcxproj )。

    <ItemDefinitionGroup>
      <Content>
        <CopyToOutputDirectory>Always</CopyToOutputDirectory>
      </Content>
    </ItemDefinitionGroup>
    

    如果没有明确设置 CopyToOutputDirectory,这将复制 Build Action 为 Content 的所有文件。

    我认为它在 Visual Studio 2008 中不起作用,因为 MSBuild 3.5 不支持 ItemDefinitionGroup(对于 C++,它还没有使用 MSBuild 项目)。

    【讨论】:

      【解决方案2】:

      您可以通过在包含命令的项目中添加构建后事件来实现您想要的效果

      xcopy /d /y $(ProjectDir)*.txt $(TargetDir)
      

      【讨论】:

      • 必须有一种方法可以真正正确地做到这一点。如果我想添加一个名为 .clever 的新文件类型,它的工作原理与 .ASPX 文件一样,该怎么办?在那种情况下我将如何设置默认值?
      • 我不知道 .ASPX 文件的行为如何,您能给我一些线索吗?
      猜你喜欢
      • 1970-01-01
      • 2016-09-09
      • 1970-01-01
      • 2020-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多