//
        // IEnumerator interface
        //
        public bool MoveNext()
        {
            ICorDebugProcess[] a = new ICorDebugProcess[1];
            uint c = 0;
            int  r = m_enum.Next((uint)a.Length, a, out c);

            if (r == 0 && c == 1) // S_OK && we got 1 new element
            {
                m_proc = CorProcess.GetCorProcess(a[0]);
            }
            else
            {
                m_proc = null;
            }
            return(m_proc != null);
        }