Visual studio 2012 如何查看在项目加载时生成的MSBuild输出?
我注意到,当Visual Studio 2012加载/初始化项目时(打开解决方案或更改平台/配置时),它可能会执行一些MSBuild目标,这些目标列为Visual studio 2012 如何查看在项目加载时生成的MSBuild输出?,visual-studio-2012,msbuild,Visual Studio 2012,Msbuild,我注意到,当Visual Studio 2012加载/初始化项目时(打开解决方案或更改平台/配置时),它可能会执行一些MSBuild目标,这些目标列为InitialTargets(它并不总是这样做——有时它会等到您真正构建它;我不知道确切的时间,但这是另一个问题) 无论如何,这些目标可能会以MSBuild消息的形式生成某些输出。如果目标是作为生成的一部分运行的,则这些消息将转到Visual Studio的输出窗口(可能还有日志文件)。不过,这些“加载时目标”似乎不会将其输出发送到输出窗口 如何查
InitialTargets
(它并不总是这样做——有时它会等到您真正构建它;我不知道确切的时间,但这是另一个问题)
无论如何,这些目标可能会以MSBuild消息的形式生成某些输出。如果目标是作为生成的一部分运行的,则这些消息将转到Visual Studio的输出窗口(可能还有日志文件)。不过,这些“加载时目标”似乎不会将其输出发送到输出窗口
如何查看或记录在生成时间之外执行的MSBuild目标的输出,特别是在初始化时间执行的MSBuild目标的输出?我从Microsoft的MSBuild团队中找到的最好结果是(2005年),但如果没有人能提供更新的信息,则可能仍然是实际的:
项目加载记录器在项目打开时使用。它会丢弃项目打开时记录的所有消息,在错误列表中显示警告,并在消息框中向用户显示任何错误。显示的错误非常详细,有助于诊断项目文件格式问题
我正在/正在寻找一个扩展点“在VS中加载项目”,并且我已经测试了
InitialTargets
。当我在初始目标中添加警告时,它会显示在错误窗口中(在启动VS之后,而不是显式构建之后)。如您所述,InitialTargets
不是针对所有项目执行的,只是针对一些项目。此外,
也找不到(如您所述)。我使用的是VS2013更新2。