Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在哪里可以找到.vcproj文件结构的参考?_C++_Visual Studio_Vcproj - Fatal编程技术网

C++ 在哪里可以找到.vcproj文件结构的参考?

C++ 在哪里可以找到.vcproj文件结构的参考?,c++,visual-studio,vcproj,C++,Visual Studio,Vcproj,我查看了MSDN,找不到它。 我找到了一个,很好。 但我真正想要的是对vcproj文件中每个元素的解释,一个引用 摆在我面前的直接问题是,元素VisualStudioProject/Files/Filter中UniqueIdentifier属性的重要性是什么?源文件的UUID在项目中是否相同?还是全球独一无二 <VisualStudioProject> ... <Files> <Filter Name="Source Files"

我查看了MSDN,找不到它。
我找到了一个,很好。
但我真正想要的是对vcproj文件中每个元素的解释,一个引用

摆在我面前的直接问题是,元素VisualStudioProject/Files/Filter中UniqueIdentifier属性的重要性是什么?源文件的UUID在项目中是否相同?还是全球独一无二

<VisualStudioProject>
  ...
  <Files>
      <Filter
        Name="Source Files"
        Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
        UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
        >
        <File ... />
          ... 
      </Filter>
      <Filter
        Name="Header Files"
        Filter="h;hpp;hxx;hm;inl;inc;xsd"
        UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
        >
        <File ... />
          ... 
      </Filter>
      <Filter
        Name="Resource Files"
        Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
        UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
        >
        <File ... />
          ... 
      </Filter>
  </Files>
  <Globals>
  </Globals>
</VisualStudioProject>

...
... 
... 
... 
但在我回答了这一个问题后,我相信我还会有10000个。所以我想要一个参考,它允许我直接编辑.vcproj

有人能建议吗


编辑:即使MS没有对其进行记录,每个元素都有其意义。有人知道列表或摘要吗?

我怀疑Microsoft不打算将该格式作为文档格式。微软过去曾表示,文档化的功能和格式在某些情况下需要多做一个数量级的工作


如果格式没有文档化,那是因为微软希望这样做。任何文档都将通过分析和逆向工程来完成。

我不知道您需要它做什么,因此这可能相关,也可能无关,但Visual Studio 2010将放弃.vcproj格式。;)

他们正在切换到基于MSBuild的.vcxproj。(因此,也将完整记录)

因此,至少从长远来看,瞄准这一目标可能更容易

至于GUID,我相信每个GUID都必须是唯一的。我认为它们之间没有任何关系(两个元素不应该有相同的GUID)


微软只是喜欢给每件事赋予它自己的GUID。你永远不知道什么时候你会需要它

我想我记得一个非常旧的版本的问题,它与
UniqueIdentifier
有关,它们不是唯一的。如果我是正确的,则问题已得到解决,
uniqueIdentifier
应为GUID

对不起,我帮不上忙了。我转到了cmake,现在我不必处理vcproj文件,它们是为我生成的


您可能可以在网站上找到更多信息,因为他们有一个vc项目文件生成器,他们必须已经完成了所有反向工程。

已记录了.vcproj中的所有元素,即VS自动化接口的DevStudio文档描述了项目对象/属性,项目对象/属性直接映射到xml元素/属性

我可以相信MS没有记录格式。但它是XML,它是可读的。有人在任何地方做过分析和逆向工程吗?XML节点名称与您的项目的config manager/properties页面中的选项非常对应。我知道项目文件会改变,但是。。我没有VS2010的预算。进一步查看后,“源文件”(集合)有一个GUID,“头文件”有一个GUID,“资源文件”有一个GUID,这些文件在项目中似乎是相同的GUID。在visual studio 2010中,如果您阅读他们的团队博客,您会发现指向更改的指针,这会更好。如果你在这里没有得到答案,我会在MS论坛上问这个问题。另外,QT有一个生成器(qmake),用于生成由QT定义的.pro文件中的vc项目文件。