Exemple #1
0
        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);
        }
Exemple #2
0
 protected virtual void OnOutputStringSent(DebuggeeOutputStringEventArgs e)
 {
     OutputStringSent?.Invoke(this, e);
 }
Exemple #3
0
 private void SessionOnOutputStringSent(object sender, DebuggeeOutputStringEventArgs args)
 {
     _logger.WriteLine(LoggerMessageType.OutputString, "Debuggee sent debug message: " + args.Message);
 }