Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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
Visual studio 2012 &引用@“回音”;对于Visual Studio 2012中的生成后事件批处理文件_Visual Studio 2012 - Fatal编程技术网

Visual studio 2012 &引用@“回音”;对于Visual Studio 2012中的生成后事件批处理文件

Visual studio 2012 &引用@“回音”;对于Visual Studio 2012中的生成后事件批处理文件,visual-studio-2012,Visual Studio 2012,出于调试目的,我偶尔希望看到实际的构建事件脚本。我已经尝试使用@echo引导脚本,该脚本应该根据的工作,但是除了在构建输出中看到exe或显式的“echo some text”输出之外,我还没有看到任何其他内容 以下是我的构建活动: echo on cd $(ProjectDir)_dev PostBuildEvents.bat $(ConfigurationName) $(TargetName) 我确实在输出中看到了此文本,但在.bat文件中没有看到任何内容。我还尝试将echo添加到批处理文件

出于调试目的,我偶尔希望看到实际的构建事件脚本。我已经尝试使用@echo引导脚本,该脚本应该根据的工作,但是除了在构建输出中看到exe或显式的“echo some text”输出之外,我还没有看到任何其他内容

以下是我的构建活动:

echo on
cd $(ProjectDir)_dev
PostBuildEvents.bat $(ConfigurationName) $(TargetName)

我确实在输出中看到了此文本,但在.bat文件中没有看到任何内容。我还尝试将echo添加到批处理文件的顶部,但也没有成功。

虽然答案来得非常晚,但它可能对其他人有用:我找到的唯一方法也包含在文档页面中,它如下所示:

修改项目设置以收取超过默认金额的款项 生成日志中的所有信息。在工具菜单上,单击选项。在里面 在“选项”对话框中,单击“项目和解决方案”节点,然后单击 单击“生成并运行”节点。然后,在MSBuild项目生成日志中 文件详细程度框中,单击详细程度


我也在为同样的问题挣扎。我能够克服这个问题的唯一方法是回显每一行,但这需要将所有内容键入两次,一次用于回显,一次用于执行。所以我决定将变量与echo一起使用

ECHO ON
ECHO C:\myFolder\bin\heat.exe
C:\myFolder\bin\heat.exe
if errorlevel 1 exit 1
使用变量的更好方法

ECHO ON
SET vCmdl="C:\myFolder\bin\heat.exe" 
ECHO %vCmdl%
%vCmdl%
if errorlevel 1 exit 1

通过这种方式,我可以在输出窗口中看到bat文件的每一行以及它们产生的任何消息,如果出现错误,“退出1”将由VS接收,并且生成失败。

一个选项是让生成后事件使用
cmd/c
启动批处理脚本,默认情况下会启用echo

例如:

cmd /c PostBuildStep.cmd "$(MSBuildProperty1)" "$(MSBuildProperty2)"

这确实解决了这个问题,但作为回报,您可以获得构建的任何内容的详细输出,我担心这通常不是人们想要的。不过,对于调试来说,这仍然是一个很好的建议!就我个人而言,我发现将细节设置为“正常”已经足够了,它不会给你提供大量你不想要的细节。“正常”对于在后期构建中看到程序的标准运行起到了作用。谢谢。这在VS2017中适用于MSBuild项目生成输出详细程度:最小。