Esempio n. 1
0
 void SendSCBindBreakpointResult(SCBindBreakpointResult msg)
 {
     sendStream.Position = 0;
     bw.Write(msg.BreakpointHashCode);
     bw.Write((byte)msg.Result);
     DoSend(DebugMessageType.SCBindBreakpointResult);
 }
Esempio n. 2
0
        void OnReceivSendSCBindBreakpointResult(SCBindBreakpointResult msg)
        {
            AD7PendingBreakPoint bp;

            if (breakpoints.TryGetValue(msg.BreakpointHashCode, out bp))
            {
                bp.Bound(msg.Result);
            }
        }
Esempio n. 3
0
        void OnReceiveMessage(DebugMessageType type, byte[] buffer)
        {
            using (System.IO.MemoryStream ms = new System.IO.MemoryStream(buffer))
            {
                using (System.IO.BinaryReader br = new System.IO.BinaryReader(ms))
                {
                    switch (type)
                    {
                    case DebugMessageType.SCAttachResult:
                    {
                        SCAttachResult result = new SCAttachResult();
                        result.Result             = (AttachResults)br.ReadByte();
                        result.DebugServerVersion = br.ReadInt32();
                        RemoteDebugVersion        = result.DebugServerVersion;
                        waitingAttach             = false;
                    }
                    break;

                    case DebugMessageType.SCBindBreakpointResult:
                    {
                        SCBindBreakpointResult msg = new SCBindBreakpointResult();
                        msg.BreakpointHashCode = br.ReadInt32();
                        msg.Result             = (BindBreakpointResults)br.ReadByte();
                        OnReceivSendSCBindBreakpointResult(msg);
                    }
                    break;

                    case DebugMessageType.SCBreakpointHit:
                    {
                        SCBreakpointHit msg = new SCBreakpointHit();
                        msg.BreakpointHashCode = br.ReadInt32();
                        msg.ThreadHashCode     = br.ReadInt32();
                        msg.StackFrame         = ReadStackFrames(br);

                        OnReceiveSCBreakpointHit(msg);
                    }
                    break;

                    case DebugMessageType.SCStepComplete:
                    {
                        SCStepComplete msg = new SCStepComplete();
                        msg.ThreadHashCode = br.ReadInt32();
                        msg.StackFrame     = ReadStackFrames(br);
                        OnReceiveSCStepComplete(msg);
                    }
                    break;

                    case DebugMessageType.SCThreadStarted:
                    {
                        SCThreadStarted msg = new SCThreadStarted();
                        msg.ThreadHashCode = br.ReadInt32();
                        OnReceiveSCThreadStarted(msg);
                    }
                    break;

                    case DebugMessageType.SCThreadEnded:
                    {
                        SCThreadEnded msg = new SCThreadEnded();
                        msg.ThreadHashCode = br.ReadInt32();
                        OnReceiveSCThreadEnded(msg);
                    }
                    break;

                    case DebugMessageType.SCModuleLoaded:
                    {
                        SCModuleLoaded msg = new SCModuleLoaded();
                        msg.ModuleName = br.ReadString();

                        OnReceiveSCModuleLoaded(msg);
                    }
                    break;

                    case DebugMessageType.SCResolveVariableResult:
                    {
                        CompleteRPCRequest(ReadVariableInfo(br));
                    }
                    break;

                    case DebugMessageType.SCEnumChildrenResult:
                    {
                        int            cnt = br.ReadInt32();
                        VariableInfo[] res = new VariableInfo[cnt];
                        for (int i = 0; i < cnt; i++)
                        {
                            res[i] = ReadVariableInfo(br);
                        }
                        CompleteRPCRequest(res);
                    }
                    break;
                    }
                }
            }
        }
Esempio n. 4
0
        void OnReceiveMessage(DebugMessageType type, byte[] buffer)
        {
            using (System.IO.MemoryStream ms = new System.IO.MemoryStream(buffer))
            {
                using (System.IO.BinaryReader br = new System.IO.BinaryReader(ms))
                {
                    switch (type)
                    {
                    case DebugMessageType.SCAttachResult:
                    {
                        SCAttachResult result = new SCAttachResult();
                        result.Result             = (AttachResults)br.ReadByte();
                        result.DebugServerVersion = br.ReadInt32();
                        RemoteDebugVersion        = result.DebugServerVersion;
                        waitingAttach             = false;
                    }
                    break;

                    case DebugMessageType.SCBindBreakpointResult:
                    {
                        SCBindBreakpointResult msg = new SCBindBreakpointResult();
                        msg.BreakpointHashCode = br.ReadInt32();
                        msg.Result             = (BindBreakpointResults)br.ReadByte();
                        OnReceivSendSCBindBreakpointResult(msg);
                    }
                    break;

                    case DebugMessageType.SCBreakpointHit:
                    {
                        SCBreakpointHit msg = new SCBreakpointHit();
                        msg.BreakpointHashCode = br.ReadInt32();
                        msg.ThreadHashCode     = br.ReadInt32();
                        msg.StackFrame         = ReadStackFrames(br);

                        OnReceiveSCBreakpointHit(msg);
                    }
                    break;

                    case DebugMessageType.SCStepComplete:
                    {
                        SCStepComplete msg = new SCStepComplete();
                        msg.ThreadHashCode = br.ReadInt32();
                        msg.StackFrame     = ReadStackFrames(br);
                        OnReceiveSCStepComplete(msg);
                    }
                    break;

                    case DebugMessageType.SCThreadStarted:
                    {
                        SCThreadStarted msg = new SCThreadStarted();
                        msg.ThreadHashCode = br.ReadInt32();
                        OnReceiveSCThreadStarted(msg);
                    }
                    break;

                    case DebugMessageType.SCThreadEnded:
                    {
                        SCThreadEnded msg = new SCThreadEnded();
                        msg.ThreadHashCode = br.ReadInt32();
                        OnReceiveSCThreadEnded(msg);
                    }
                    break;

                    case DebugMessageType.SCModuleLoaded:
                    {
                        SCModuleLoaded msg = new SCModuleLoaded();
                        msg.ModuleName = br.ReadString();

                        OnReceiveSCModuleLoaded(msg);
                    }
                    break;
                    }
                }
            }
        }