【问题标题】:Creating .sln/vcproj files创建 .sln/vcproj 文件
【发布时间】:2011-03-18 05:45:33
【问题描述】:

我想编写一个程序或脚本来为我生成 .vcproj 和 .sln 文件。我目前有很多设置/配置需要为我创建的每个 .vcproj 设置,并且我已经看到人们能够以某种方式生成这些文件,尽管我无法通过 msdn 或 bing 找到一个好的资源来这样做。有人可以发布一个资源链接或如何实现这一点的指南吗?

【问题讨论】:

  • 也许您可以发布您想要更改的内容。我不认为所有的格式都记录在案,我也不认为这很容易
  • 每个项目的设置是否唯一?它们是动态的吗?如果没有,只需将它们放在导入的 .props 文件中即可。

标签: c++ visual-studio-2010 msbuild project visual-studio-express


【解决方案1】:

您可以使用 MSVS 对象模型生成 .sln/.vcproj。它可以是宏或加载项。此示例是生成 .sln/.vcproj 的宏。

Sub SlnVcprojGenerator()
    Dim sln As Solution
    Dim prj As Project
    sln = DTE.Solution
    sln.Create("C:\test", "new_sln.sln")
    prj = sln.AddFromTemplate("C:\Program Files (x86)\Microsoft Visual Studio 8\VC\VCWizards\default.vcproj", "c:\test", "new_prj", True)
    sln.SaveAs("C:\test\new_sln.sln")
End Sub

【讨论】:

  • 除了 DTE 对象模型之外,还有一种使用 MSBuild 程序集的新方法值得一看。查看 Framework v4.0 中的 Microsoft.Build.dll,特别是 Microsoft.Build.Construction 命名空间。
【解决方案2】:

从我所见/使用的情况来看,CMake 对于生成项目/解决方案文件非常有用。

【讨论】:

  • CMake 做得很好。但是,我们应该指出,CMake 创建的项目不能转移到其他工作站。这意味着您必须使用 CMake 作为所有开发人员的构建系统。但我建议这样做!
  • 并且开发人员需要记住在 CMake 脚本中更新项目设置,而不仅仅是在 Visual Studio 中:P
【解决方案3】:

我们从脚本创建 csproj 文件,但我们只是通过检查 xml 和复制来做到这一点。我们每次打开手动生成的项目文件时都会收到警告。我们可以通过在某个地方的注册表项中添加条目来解决这个问题。

我想只要有足够的工作,您就可以模仿 csproj/vcproj 中使其“正式”的任何部分。

【讨论】:

    【解决方案4】:

    为什么不创建项目或项目模板? http://msdn.microsoft.com/en-us/magazine/cc188697.aspx

    您甚至可以从给定项目中导出模板,如下所述:http://msdn.microsoft.com/en-us/library/xkh1wxd8%28v=VS.100%29.aspx。尽管此选项实际上还不适用于 VS 中的 VC++,但有一个由 Visual Studio 平台团队构建的附加组件,可在 Visual Studio Gallery http://visualstudiogallery.msdn.microsoft.com/57320b20-34a2-42e4-b97e-e615c71aca24/ 上找到。它为 VC++ 启用了相同的功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-13
      相关资源
      最近更新 更多