Beispiel #1
0
            new public int EnumPorts(out IEnumDebugPorts2 ppEnum)
            {
                List <IDebugPort2> ports = new List <IDebugPort2>();

                foreach (NanoDeviceBase device in NanoFrameworkPackage.NanoDeviceCommService.DebugClient.NanoFrameworkDevices)
                {
                    ports.Add(new DebugPort(device, this));
                }

                ppEnum = new CorDebugEnum(ports, typeof(IDebugPort2), typeof(IEnumDebugPorts2));
                return(COM_HResults.S_OK);
            }
Beispiel #2
0
        int ICorDebugILFrame.EnumerateArguments(out ICorDebugValueEnum ppValueEnum)
        {
#if ALL_VALUES
            ppValueEnum = new CorDebugEnum(this.Locals, typeof(ICorDebugValue), typeof(ICorDebugValueEnum));

            return(COM_HResults.S_OK);
#else
            ppValueEnum = null;

            return(COM_HResults.E_NOTIMPL);
#endif
        }
        int ICorDebugChain.EnumerateFrames(out ICorDebugFrameEnum ppFrames)
        {
            //Reverse the order for the enumerator
            CorDebugFrame[] frames = new CorDebugFrame[m_frames.Length];

            int iFrameSrc = m_frames.Length - 1;

            for (int iFrameDst = 0; iFrameDst < m_frames.Length; iFrameDst++)
            {
                frames[iFrameDst] = m_frames[iFrameSrc];
                iFrameSrc--;
            }

            ppFrames = new CorDebugEnum(frames, typeof(ICorDebugFrame), typeof(ICorDebugFrameEnum));

            return(COM_HResults.S_OK);
        }
Beispiel #4
0
        int ICorDebugThread.EnumerateChains(out ICorDebugChainEnum ppChains)
        {
            Debug.Assert(!IsVirtualThread);

            ArrayList chains = new ArrayList();

            for (CorDebugThread thread = GetLastCorDebugThread(); thread != null; thread = thread.PreviousThread)
            {
                CorDebugChain chain = thread.Chain;

                if (chain != null)
                {
                    chains.Add(chain);
                }
            }

            ppChains = new CorDebugEnum(chains, typeof(ICorDebugChain), typeof(ICorDebugChainEnum));

            return(COM_HResults.S_OK);
        }
 int ICorDebug.EnumerateProcesses(out ICorDebugProcessEnum ppProcess)
 {
     ppProcess = new CorDebugEnum(_processes, typeof(ICorDebugProcess), typeof(ICorDebugProcessEnum));
     return(COM_HResults.S_OK);
 }
 int Microsoft.VisualStudio.Debugger.Interop.IDebugPort2.EnumProcesses(out IEnumDebugProcesses2 ppEnum)
 {
     RefreshProcesses();
     ppEnum = new CorDebugEnum(_alProcesses, typeof(IDebugProcess2), typeof(IEnumDebugProcesses2));
     return(COM_HResults.S_OK);
 }
        int ICorDebugAppDomain.EnumerateSteppers(out ICorDebugStepperEnum ppSteppers)
        {
            ppSteppers = new CorDebugEnum(Process.GetBreakpoints(typeof(CorDebugStepper), this), typeof(ICorDebugBreakpoint), typeof(ICorDebugBreakpointEnum));

            return(COM_HResults.S_OK);
        }
        int ICorDebugAppDomain.EnumerateAssemblies(out ICorDebugAssemblyEnum ppAssemblies)
        {
            ppAssemblies = new CorDebugEnum(m_assemblies, typeof(ICorDebugAssembly), typeof(ICorDebugAssemblyEnum));

            return(COM_HResults.S_OK);
        }
Beispiel #9
0
        int ICorDebugAppDomain.EnumerateBreakpoints(out ICorDebugBreakpointEnum ppBreakpoints)
        {
            ppBreakpoints = new CorDebugEnum(this.Process.GetBreakpoints(typeof(CorDebugBreakpoint), this), typeof(ICorDebugBreakpoint), typeof(ICorDebugBreakpointEnum));

            return(COM_HResults.S_OK);
        }
Beispiel #10
0
        int ICorDebugAssembly.EnumerateModules(out ICorDebugModuleEnum ppModules)
        {
            ppModules = new CorDebugEnum(this, typeof(ICorDebugModule), typeof(ICorDebugModuleEnum));

            return(COM_HResults.S_OK);
        }