private DebuggerAction HandleOutputStringDebugEvent(DEBUG_EVENT debugEvent) { var info = debugEvent.InterpretDebugInfoAs <OUTPUT_DEBUG_STRING_INFO>(); var process = GetProcessById((int)debugEvent.dwProcessId); var thread = process.GetThreadById((int)debugEvent.dwThreadId); var eventArgs = new DebuggeeOutputStringEventArgs(thread, process.ReadString( info.lpDebugStringData, info.nDebugStringLength, info.fUnicode == 0)); OnOutputStringSent(eventArgs); return(eventArgs.NextAction); }
protected virtual void OnOutputStringSent(DebuggeeOutputStringEventArgs e) { OutputStringSent?.Invoke(this, e); }
private void SessionOnOutputStringSent(object sender, DebuggeeOutputStringEventArgs args) { _logger.WriteLine(LoggerMessageType.OutputString, "Debuggee sent debug message: " + args.Message); }