本文整理汇总了C#中Mono.Debugging.Client.DebuggerSession.Run方法的典型用法代码示例。如果您正苦于以下问题:C# DebuggerSession.Run方法的具体用法?C# DebuggerSession.Run怎么用?C# DebuggerSession.Run使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mono.Debugging.Client.DebuggerSession
的用法示例。
在下文中一共展示了DebuggerSession.Run方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: InternalRun
internal static void InternalRun (ExecutionCommand cmd, DebuggerEngine factory, IConsole c)
{
if (factory == null) {
factory = GetFactoryForCommand (cmd);
if (factory == null)
throw new InvalidOperationException ("Unsupported command: " + cmd);
}
DebuggerStartInfo startInfo = factory.CreateDebuggerStartInfo (cmd);
startInfo.UseExternalConsole = c is ExternalConsole;
startInfo.CloseExternalConsoleOnExit = c.CloseOnDispose;
currentEngine = factory;
session = factory.CreateSession ();
session.ExceptionHandler = ExceptionHandler;
session.Initialize ();
// When using an external console, create a new internal console which will be used
// to show the debugger log
if (startInfo.UseExternalConsole)
console = (IConsole) IdeApp.Workbench.ProgressMonitors.GetOutputProgressMonitor (GettextCatalog.GetString ("Application Output"), Stock.RunProgramIcon, true, true);
else
console = c;
SetupSession ();
try {
session.Run (startInfo, GetUserOptions ());
} catch {
Cleanup ();
throw;
}
}
示例2: InternalRun
internal static void InternalRun (ExecutionCommand cmd, DebuggerEngine factory, IConsole c)
{
if (factory == null) {
factory = GetFactoryForCommand (cmd);
if (factory == null)
throw new InvalidOperationException ("Unsupported command: " + cmd);
}
if (session != null)
throw new InvalidOperationException ("A debugger session is already started");
DebuggerStartInfo startInfo = factory.CreateDebuggerStartInfo (cmd);
startInfo.UseExternalConsole = c is ExternalConsole;
startInfo.CloseExternalConsoleOnExit = c.CloseOnDispose;
currentEngine = factory;
session = factory.CreateSession ();
session.ExceptionHandler = ExceptionHandler;
// When using an external console, create a new internal console which will be used
// to show the debugger log
if (startInfo.UseExternalConsole)
console = (IConsole) IdeApp.Workbench.ProgressMonitors.GetRunProgressMonitor ();
else
console = c;
SetupSession ();
// Dispatch synchronously to avoid start/stop races
DispatchService.GuiSyncDispatch (delegate {
oldLayout = IdeApp.Workbench.CurrentLayout;
IdeApp.Workbench.CurrentLayout = "Debug";
});
try {
session.Run (startInfo, GetUserOptions ());
} catch {
Cleanup ();
throw;
}
}
示例3: InternalRun
internal static void InternalRun (ExecutionCommand cmd, DebuggerEngine factory, IConsole c)
{
if (factory == null) {
factory = GetFactoryForCommand (cmd);
if (factory == null)
throw new InvalidOperationException ("Unsupported command: " + cmd);
}
DebuggerStartInfo startInfo = factory.CreateDebuggerStartInfo (cmd);
startInfo.UseExternalConsole = c is ExternalConsole;
startInfo.CloseExternalConsoleOnExit = c.CloseOnDispose;
currentEngine = factory;
session = factory.CreateSession ();
session.Initialize ();
console = c;
SetupSession ();
try {
session.Run (startInfo, GetUserOptions ());
} catch {
Cleanup ();
throw;
}
}