internal AD7Breakpoint(AD7ProgramNode node, AD7Events callback)
 {
   Debug.WriteLine("AD7Breakpoint: ctor");
   _node = node;
   _callback = callback;
   _breakpointRequest = null;
 }
 public AD7Breakpoint(AD7ProgramNode node, AD7Events callback, IDebugBreakpointRequest2 breakpointRequest)
 {
   Debug.WriteLine("AD7Breakpoint: ctor");
   _node = node;
   _callback = callback;
   _breakpointRequest = breakpointRequest;
   
   BP_REQUEST_INFO[] requestInfo = new BP_REQUEST_INFO[1];
   _breakpointRequest.GetRequestInfo(enum_BPREQI_FIELDS.BPREQI_BPLOCATION | enum_BPREQI_FIELDS.BPREQI_CONDITION, requestInfo);
   _bpRequestInfo = requestInfo[0];
 }
 public AD7Process(IDebugPort2 debugPort)
 {
   Id = Guid.NewGuid();
   _port = debugPort;
   Node = new AD7ProgramNode(this);
 }
Beispiel #4
0
 public AD7Property(AD7ProgramNode node)
 {
     Debug.WriteLine("AD7Property ctor (node)");
     _node = node;
 }
Beispiel #5
0
 public AD7Property(string name, AD7ProgramNode node, RoutineScope rs) : this(name, node, rs, false)
 {
 }
Beispiel #6
0
 public AD7Process(IDebugPort2 debugPort)
 {
     Id    = Guid.NewGuid();
     _port = debugPort;
     Node  = new AD7ProgramNode(this);
 }
 /// <summary>
 /// Reinitializes the instance of debugger manager for a new debugging session.
 /// </summary>
 public static void Init(AD7Events events, AD7ProgramNode node, AD7Breakpoint breakpoint)
 {
     Instance = new DebuggerManager(events, node, breakpoint);
 }
Beispiel #8
0
 public void Breakpoint(AD7ProgramNode program, AD7Breakpoint breakpoint)
 {
   Debug.WriteLine("Event Breakpoint");
   Guid iid = new Guid(BreakPointEvent.IID);
   _callback.Event(_engine, null, null, null, new BreakPointEvent(breakpoint), ref iid, BreakPointEvent.Attributes);
 }
Beispiel #9
0
 public void BreakpointError(AD7ProgramNode program, IDebugErrorBreakpoint2 bpError)
 {
   Debug.WriteLine("Event BreakpointError");
   Guid iid = new Guid(DebugBreakpointErrorEvent.IID);
   _callback.Event(_engine, null, null, null, new DebugBreakpointErrorEvent(bpError), ref iid, DebugBreakpointErrorEvent.Attributes);
 }    
Beispiel #10
0
 public void ThreadDestroyed(AD7ProgramNode node)
 {
   Debug.WriteLine("Event ThreadDestroyed");
   Guid iid = new Guid(ThreadDestroyedEvent.IID);
   _callback.Event(
     _engine, null, node, node, new ThreadDestroyedEvent(),
     ref iid, ThreadDestroyedEvent.Attributes);
 }
Beispiel #11
0
 public void ExpressionEvalCompleted(
   AD7ProgramNode node, IDebugExpression2 pExpr, IDebugProperty2 pProp)
 {
   Debug.WriteLine("Event ExpressionEvaluationCompleted");
   Guid iid = new Guid(ExpressionEvalCompleteEvent.IID);
   _callback.Event(
     _engine, null, node, node, new ExpressionEvalCompleteEvent( pExpr, pProp ), 
     ref iid, ExpressionEvalCompleteEvent.Attributes);
 }
Beispiel #12
0
 public void StepCompleted(AD7ProgramNode node)
 {
   Debug.WriteLine("Event StepCompleted");
   Guid iid = new Guid(StepCompleteEvent.IID);
   _callback.Event(_engine, null, node, node, new StepCompleteEvent(), ref iid, StepCompleteEvent.Attributes);
 }
Beispiel #13
0
 public void Break(AD7ProgramNode program)
 {
   Debug.WriteLine("Event Break");
   Guid iid = new Guid(BreakEvent.IID);
   _callback.Event(_engine, null, program, program, new BreakEvent(), ref iid, BreakEvent.Attributes);
 }
Beispiel #14
0
    int IDebugEngineLaunch2.LaunchSuspended(string pszServer, IDebugPort2 pPort, string pszExe, string pszArgs, string pszDir, string bstrEnv, string pszOptions, enum_LAUNCH_FLAGS dwLaunchFlags, uint hStdInput, uint hStdOutput, uint hStdError, IDebugEventCallback2 pCallback, out IDebugProcess2 ppProcess)
    {
      Debug.WriteLine("AD7Engine LaunchSuspended");
      ppProcess = new AD7Process(pPort);
      _node = (ppProcess as AD7Process).Node;
      _node.FileName = pszExe;
      _node.ConnectionString = pszArgs;
      _events = new AD7Events(this, pCallback);

      // Gets active window handler to use in modals
      IntPtr handler = GetForegroundWindow();
      _node.ParentWindow = new System.Windows.Forms.NativeWindow();
      _node.ParentWindow.AssignHandle(handler);

      return VSConstants.S_OK;
    }