none
Where is IROTVIEW?

    Question

  • Where do I find the ROT viewer app "IROTVIEW"?  It is nowhere in the Visual Studio folder, and nowhere in the MS Downloads.
    Hi
    Monday, February 9, 2009 12:27 AM

Answers

  •  Wow haven't seen that tool in ages, it used to be available in both VS.Net and the PlatformSDK but for some reason its nolonger included in either of them. Listing the ROT is luckily not that much work.

    using System;  
    using System.Collections.Generic;  
    using System.Linq;  
    using System.Text;  
    using System.Runtime.InteropServices;  
    using System.Runtime.InteropServices.ComTypes;  
     
    namespace RotTest  
    {  
        class Program  
        {  
            [DllImport("ole32.dll", PreserveSig = false)]  
            private static extern void CreateBindCtx(uint reserved, out IBindCtx ppbc);  
     
            static void Main(string[] args)  
            {  
                IBindCtx ctx;  
                IRunningObjectTable table;  
                IEnumMoniker mon;  
                IMoniker[] lst = new IMoniker[1];  
     
                CreateBindCtx(0, out ctx);  
                ctx.GetRunningObjectTable(out table);  
                table.EnumRunning(out mon);  
                while (mon.Next(1,lst,IntPtr.Zero)==0)  
                {  
                    string displayName;  
                    lst[0].GetDisplayName(ctx, lst[0], out displayName);  
                    Console.WriteLine(displayName);  
                }  
            }  
        }  
    }  
     

    note that is only a proof of concept, adding some error handing and perhaps some cleanup isn't the worst idea
    • Marked as answer by NastySlapper Monday, February 9, 2009 11:09 PM
    Monday, February 9, 2009 1:55 AM
  • This tool was originally in VS 6.0 installation. And you can try the following link:
    http://www.dll1.cn/soft/download.asp?softid=4446&downid=7&id=4417

    Thanks.

    Return to the source, learn the way!
    • Marked as answer by NastySlapper Monday, February 9, 2009 11:08 PM
    Monday, February 9, 2009 1:36 AM

All replies

  • This tool was originally in VS 6.0 installation. And you can try the following link:
    http://www.dll1.cn/soft/download.asp?softid=4446&downid=7&id=4417

    Thanks.

    Return to the source, learn the way!
    • Marked as answer by NastySlapper Monday, February 9, 2009 11:08 PM
    Monday, February 9, 2009 1:36 AM
  •  Wow haven't seen that tool in ages, it used to be available in both VS.Net and the PlatformSDK but for some reason its nolonger included in either of them. Listing the ROT is luckily not that much work.

    using System;  
    using System.Collections.Generic;  
    using System.Linq;  
    using System.Text;  
    using System.Runtime.InteropServices;  
    using System.Runtime.InteropServices.ComTypes;  
     
    namespace RotTest  
    {  
        class Program  
        {  
            [DllImport("ole32.dll", PreserveSig = false)]  
            private static extern void CreateBindCtx(uint reserved, out IBindCtx ppbc);  
     
            static void Main(string[] args)  
            {  
                IBindCtx ctx;  
                IRunningObjectTable table;  
                IEnumMoniker mon;  
                IMoniker[] lst = new IMoniker[1];  
     
                CreateBindCtx(0, out ctx);  
                ctx.GetRunningObjectTable(out table);  
                table.EnumRunning(out mon);  
                while (mon.Next(1,lst,IntPtr.Zero)==0)  
                {  
                    string displayName;  
                    lst[0].GetDisplayName(ctx, lst[0], out displayName);  
                    Console.WriteLine(displayName);  
                }  
            }  
        }  
    }  
     

    note that is only a proof of concept, adding some error handing and perhaps some cleanup isn't the worst idea
    • Marked as answer by NastySlapper Monday, February 9, 2009 11:09 PM
    Monday, February 9, 2009 1:55 AM
  • Thanks to both of you.
    Hi
    Monday, February 9, 2009 11:09 PM
  • Hi, I am looking for ROTVIEW.EXE. 

    Could someone please provide complete newbie instructions on how to turn the source code above into a running program using a trial version of visual studio 2013 ultimate? 

    In terms of instruction detail, I was able to follow this tutorial from start to end http://msdn.microsoft.com/en-us/library/bb250489(v=vs.85).aspx and I was able to modify the code so that instead of removing images, depending on the LocationName, the DLL registers the IUnknown of that IE in the ROT using the IRunningObjectTable::Register method as per http://support.microsoft.com/kb/176792.

    Now I want to see the ROT because I want to know how to use GetObject from my VBA code to attach to an already running instance of IE.  I cannot use ShellWindows because the shell is either WFSHELL.EXE or RDPSHELL.EXE depending on whether the seamless application is published from Citrix XenApp or Microsoft RemoteApp.  The shell is not EXPLORER.EXE.  In that sense, there is no shell.

    Friday, December 20, 2013 11:28 AM