Search code examples
c#windowsoutlookoutlook-object-model

Open Event of Window and Handle of Window


How do I get a window handle (IntPtr) from the Outlook window I have just opened?

    OutLook.Items items = oFolder.Items;

    foreach (OutLook.MailItem mail in items)
    {

          mail.Display();

          //IntPtr a = (System.IntPtr)mail.GetInspector.Parent;

I am new to C sharp.


Solution

  • I think I'll have to settle with this solution. I was hoping for something a lot more solid, but this is about 80% solid. Interested to see what others think.

    Its standard get window by window title:

                        Process[] processes = Process.GetProcessesByName("OUTLOOK");
    
                        foreach (Process p in processes)
                        {
    
                            if (p.MainWindowTitle == mail.GetInspector.Caption)
                            {
    
                                handle = p.MainWindowHandle;
    
                                break;
                            }
    
                        }