输出窗口进度显示

时间:2013-06-12 16:10:33

标签: visual-studio post-build-event

我有一个带有一些构建后事件命令的项目。这些命令需要一些时间才能完成,并且还有控制台输出。如果重要,则命令是PowerShell命令/脚本。我发现Visual Studio在执行命令时会表现得没响应。一旦命令全部执行,整个输出将在构建完成时显示在VS的“输出”窗口中。我想要的是输出窗口显示控制台输出,所以当我的脚本运行时,我会看到“开始命令执行...”,“命令1完成,开始命令2 ......”,类似于那。这可能吗?

这是我的post-build事件命令的样子:

if "$(ConfigurationName)" == "Release" "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" Set-ExecutionPolicy Unrestricted
if "$(ConfigurationName)" == "Release" "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -file "$(SolutionDir)\installshieldAutomationScript.ps1"
if "$(ConfigurationName)" == "Release" "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" Set-ExecutionPolicy Restricted

以下是我的PowerShell脚本片段:

Write-Host "Running post-build script..." -ForegroundColor "Green"

#Do a bunch of stuff here
Write-Host "Post-build script complete!" -ForegroundColor "Cyan"

1 个答案:

答案 0 :(得分:0)

你能在PowerShell命令之间放一个“[System.Windows.Forms.Application] :: DoEvents()”吗?没有它,您不允许表单事件处理程序处理每个命令之间的重绘。在Write-Host行之后你会立即需要这个。

我在这里看到了一篇很好的文章:Powershell Job Event Action With Form Not Executed