如何从所选邮件中获取 Outlook PST 名称 VB.NET

How to get Outlook PST Name from Selected Mail VB.NET

我遇到过这样一种情况,我想根据对 Outlook 资源管理器中的项目所做的选择来获取 pst 名称。基本上我的 Outlook 有很多收件箱。我需要知道我选择的电子邮件项目的 pst 名称。 到目前为止,我尝试了很多次迭代,但没有运气,基本上我来自 VBA 背景,在 VBA 中,我很容易得到它,如下所示:

oMailItem.Parent.Parent 

它给了我完美的结果。 但是,在 .NET 中,当我将点放在第一个 Parent 之后时,我没有看到 oMailItem.Parent.Parent,IntelliSense 不再提供 属性 Parent。我尝试过转换,但没有成功,因为我对 VB.NET.

还很陌生

请指教

谢谢, 拉希德

属性 ParentObject 类型,所以你必须先像这样将它转换为 Outlook.Folder 。请记住,尽管可能无法进行转换,因此您应该检查 folder 是否实际引用了一个对象,而不是 Nothing

Dim folder As Outlook.Folder = TryCast(oMailItem.Parent, Outlook.Folder)
If folder IsNot Nothing Then
    folder.Parent ...
End If

您需要使用 Store.FilePath。要获取父商店,请使用 MAPIFolder.Store。要获取父文件夹,请阅读 MailItem.Parent 属性 并将其转换为 MAPIFolder.