【发布时间】:2011-09-06 06:23:42
【问题描述】:
我有一个 (python) 脚本 可以完成以下任务:
- 扫描文件夹以查找
.csproj和.vcproj文件。 - 根据
.csproj和.vcproj文件编写文本,创建一个包含所有项目的解决方案文件。 - 构建该解决方案。通过命令行调用
devenv.exe /Build(python 上为subprocess.call)。
我的问题是:当我构建时,VS 更改了我的 SLN 中的配置。具体来说,在 SLN 的 Win32 配置中,所有 .csproj 项目(.NET 项目)从 x86 切换到 x64 并从构建中标记出来。
尝试失败:
将 SLN 更改为在 x86 上拥有所有 .NET,在x86 解决方案配置下拥有Win32 上的 VC。同样,VS 在打开 SLN 时会破坏它:VC 会自动更改为目标 x64 并标记为构建之外。
尝试成功但相当笨拙:
首先,我让 VS 破坏文件。我设法做到这一点的唯一笨拙方法是从命令行调用/Build 然后/Clean。接下来,我通过替换 VS 破坏的配置来修复 SLN 文件。现在当我/Build它时,VS 不会改变 SLN。
所以:
- 谁有更优雅的解决方案?
- 除了
/Build-/Clean之外,还有什么更好的方法让 VS 破坏文件?
【问题讨论】:
标签: .net python visual-studio-2008 visual-c++ scripting