我使用的是标准操作环境,涉及在Windows XP上运行的Visual Studio 2005。
解决方案的源代码在Linux中管理,但是在Windows计算机上通过网络共享使用Visual Studio进行编辑和编译。
我面临的问题是,如果我更改解决方案的某些项目的输出目录,Visual Studio会自动创建目录,但它们始终为小写。输出文件具有正确的大小写,只有目录是小写的。
这会导致Linux中使用的源代码管理工具出现问题,这些工具非常挑剔。
有没有办法让Visual Studio 2005在正确的情况下创建目录?我考虑使用调用mkdir
的预构建脚本,因为我发现它有效,但是为每个受影响的项目插入预构建脚本似乎很麻烦。
我还考虑过,也许是导致问题的网络层,但如果我暂时将输出目录设置为本地硬盘,则会发生同样的事情。
要进行更新,这里实际上有两个变量$(TargetDir)
,它基本上只是$(OutDir)
或$(OutputDir)
的小写版本,具体取决于构建阶段。我似乎无法找到如何改变它,或者它来自何处。
答案 0 :(得分:2)
我通过在预构建步骤中使用mkdir
来修复此问题。对于目录大小很重要的每个项目,我都有以下预构建步骤:
if not exist "$(OutputDir)" mkdir "$(OutputDir)"
条件是必需的,因为如果目录已经存在,mkdir
将返回非零,这将停止构建。
答案 1 :(得分:1)
根据这个article,这是一个错误,但Microsoft的文章中指出了一种解决方法。这篇文章是从2005年开始的,所以我不确定它是否还是一个bug。