【问题标题】:Visual Studio 2005 creates output directories in lowercaseVisual Studio 2005 以小写字母创建输出目录
【发布时间】:2010-07-29 05:30:02
【问题描述】:

我使用的标准操作环境包括在 Windows XP 上运行的 Visual Studio 2005。

解决方案的源代码在 Linux 中进行管理,但在 Windows 计算机上通过网络共享使用 Visual Studio 进行编辑和编译。

我面临的问题是,如果我更改解决方案的某些项目的输出目录,Visual Studio 会自动创建这些目录,但它们始终是小写的。输出文件大小写正确,只有目录是小写的。

这导致 Linux 中使用的源代码管理工具出现问题,这些工具对大小写很挑剔。

有没有办法让 Visual Studio 2005 在正确的情况下创建目录?我已经考虑过使用调用mkdir 的预构建脚本,因为我发现这是可行的,但是必须为每个受影响的项目插入预构建脚本似乎很麻烦。

我也考虑过可能是网络层导致了问题,但是如果我暂时将输出目录设置到本地硬盘驱动器,也会发生同样的事情。


更新一下,这里实际上有两个变量$(TargetDir),它本质上只是$(OutDir) 或$(OutputDir) 的小写版本,具体取决于构建阶段。我似乎不知道如何更改它,或者它来自哪里。

【问题讨论】:

    标签: visual-studio-2005 build-process case-sensitive


    【解决方案1】:

    我通过在预构建步骤中使用mkdir 解决了这个问题。对于目录大小写很重要的每个项目,我都有以下预构建步骤:

    if not exist "$(OutputDir)" mkdir "$(OutputDir)"
    

    条件是必需的,因为如果目录已经存在,mkdir 返回非零值,这会停止构建。

    【讨论】:

      【解决方案2】:

      根据这个article,这是一个错误,但微软在文章中指出了一种解决方法。这篇文章是 2005 年的,所以我不确定它是否仍然是一个错误。

      【讨论】:

      • 这看起来像同样的错误,但不幸的是解决方法不可行;解决方法看起来特定于 Windows Installer 组件。
      • 我对此一无所知,但是您不能在使用正确的大写创建目录后重命名目录吗?
      • @Grumpy:我可以,但是每次我清理并重新构建时,目录都会再次以小写形式出现。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-24
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      • 2011-01-04
      • 2012-08-21
      相关资源
      最近更新 更多