本文整理汇总了C#中Microsoft.VisualStudioTools.VisualStudioApp.GetOutputWindowText方法的典型用法代码示例。如果您正苦于以下问题:C# VisualStudioApp.GetOutputWindowText方法的具体用法?C# VisualStudioApp.GetOutputWindowText怎么用?C# VisualStudioApp.GetOutputWindowText使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.VisualStudioTools.VisualStudioApp
的用法示例。
在下文中一共展示了VisualStudioApp.GetOutputWindowText方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LaunchAndVerifyNoDebug
private static void LaunchAndVerifyNoDebug(
VisualStudioApp app,
int port,
string textInResponse
) {
bool prevNormal = true, prevAbnormal = true;
string text;
int retries;
try {
using (var processes = new ProcessScope("python")) {
EndToEndLog("Transitioning to UI thread to build");
app.ServiceProvider.GetUIThread().Invoke(() => {
EndToEndLog("Building");
app.Dte.Solution.SolutionBuild.Build(true);
EndToEndLog("Build output: {0}", app.GetOutputWindowText("Build"));
EndToEndLog("Updating settings");
prevNormal = app.GetService<PythonToolsService>().DebuggerOptions.WaitOnNormalExit;
prevAbnormal = app.GetService<PythonToolsService>().DebuggerOptions.WaitOnAbnormalExit;
app.GetService<PythonToolsService>().DebuggerOptions.WaitOnNormalExit = false;
app.GetService<PythonToolsService>().DebuggerOptions.WaitOnAbnormalExit = false;
EndToEndLog("Starting running");
app.Dte.Solution.SolutionBuild.Run();
EndToEndLog("Running");
});
var newProcesses = processes.WaitForNewProcess(TimeSpan.FromSeconds(30)).ToList();
Assert.IsTrue(newProcesses.Any(), "Did not find new Python process");
EndToEndLog("Found new processes with IDs {0}", string.Join(", ", newProcesses.Select(p => p.Id.ToString())));
for (retries = 100;
retries > 0 &&
!IPGlobalProperties.GetIPGlobalProperties().GetActiveTcpListeners().Any(p => p.Port == port);
--retries) {
Thread.Sleep(300);
}
EndToEndLog("Active at http://localhost:{0}/", port);
text = WebDownloadUtility.GetString(new Uri(string.Format("http://localhost:{0}/", port)));
}
} finally {
app.ServiceProvider.GetUIThread().Invoke(() => {
app.GetService<PythonToolsService>().DebuggerOptions.WaitOnNormalExit = prevNormal;
app.GetService<PythonToolsService>().DebuggerOptions.WaitOnAbnormalExit = prevAbnormal;
});
}
EndToEndLog("Response from http://localhost:{0}/", port);
EndToEndLog(text);
Assert.IsTrue(text.Contains(textInResponse), text);
for (retries = 20;
retries > 0 && !IPGlobalProperties.GetIPGlobalProperties().GetActiveTcpListeners().All(p => p.Port != port);
--retries) {
Thread.Sleep(500);
}
if (retries > 0) {
EndToEndLog("Process ended");
} else {
EndToEndLog("Timed out waiting for process to exit");
}
}