簡體   English   中英

VB獲取Outlook默認郵箱

[英]VB Get Outlook Default Mailbox

我需要一些 vb 方面的幫助。 我需要一個用於 Outlook 2007 的腳本,它返回默認數據文件的 pst 名稱。 需要說明的是,用戶收到郵件時的默認郵箱將是 Exchange 帳戶。 但是,有些用戶默認使用他們的個人文件夾,這樣當電子郵件到達時,郵件會自動轉到指定的個人文件夾。 所以我的目標是輸出用戶默認使用交換帳戶或個人文件夾的結果。 如果是個人文件夾,我想要 pst 的位置/路徑。 我嘗試使用 getdefaultfolder 但它返回“收件箱”。

objNS.GetDefaultFolder(olFolderInbox)

Outlook 對象模型不公開 PST 路徑。 您可以使用 Extended MAPI(僅限 C++ 或 Delphi)或Redemption (任何語言)來找出 PST 路徑。 有關讀取 RDOPstStore.PstPath 屬性的示例,請參見下面的示例:

  skPstAnsi = 1
  skPstUnicode = 2
  skPrimaryExchangeMailbox = 3
  skDelegateExchangeMailbox = 4
  skPublicFolders = 5
  set Session = CreateObject("Redemption.RDOSession")
  Session.MAPIOBJECT = Application.Session.MAPIOBJECT
  for each Store in Session.Stores
    Debug.Print Store.Name
    if (Store.StoreKind = skPstAnsi) or (Store.StoreKind = skPstUnicode) Then
      Debug.Print Store.PstPath
    ElseIf (Store.StoreKind = skPrimaryExchangeMailbox) or (Store.StoreKind = skDelegateExchangeMailbox) or (Store.StoreKind = skPublicFolders) Then
      Debug.Print Store.ServerDN
    End If
  next

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM