代码之家  ›  专栏  ›  技术社区  ›  Luke Duddridge

使用访问其他Exchange邮箱Microsoft.Office.Interop.展望

  •  2
  • Luke Duddridge  · 技术社区  · 16 年前

    var app = new Microsoft.Office.Interop.Outlook.Application();
    var ns = app.GetNamespace("MAPI");
    ns.Logon();
    var inboxFolder = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
    

    这成功地将我连接到我的主收件箱,然后我可以在其中循环。

    我下一步要找到的是一种使用附加邮箱X并获取默认文件夹的方法。

    在Exchange版本上不确定。

    干杯

    1 回复  |  直到 16 年前
        1
  •  4
  •   Elmo Shikha Dhawan    14 年前

    我想我有:-

    ns = app.GetNamespace("MAPI");
    ns.Logon();
    var recipient = ns.CreateRecipient("xx@yy.com");
    recipient.Resolve();
    var sharedFolder = ns.GetSharedDefaultFolder(recipient, Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
    

    不确定 ns.Logon 是必要的,但我还是把它留下了。

        2
  •  1
  •   Dave Potts    5 年前

    import win32com.client
    outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
    
    other_user = outlook.CreateRecipient("user.name@example.com")
    print(other_user)
    other_mailbox = outlook.GetSharedDefaultFolder(other_user, 6) # 6= inbox see https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.outlook.oldefaultfolders?view=outlook-pia
    print(other_mailbox)
    print(other_mailbox.Items[0])