如何从所选邮件中获取 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.
还很陌生
请指教
谢谢,
拉希德
属性 Parent 是 Object
类型,所以你必须先像这样将它转换为 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
.
我遇到过这样一种情况,我想根据对 Outlook 资源管理器中的项目所做的选择来获取 pst 名称。基本上我的 Outlook 有很多收件箱。我需要知道我选择的电子邮件项目的 pst 名称。 到目前为止,我尝试了很多次迭代,但没有运气,基本上我来自 VBA 背景,在 VBA 中,我很容易得到它,如下所示:
oMailItem.Parent.Parent
它给了我完美的结果。
但是,在 .NET 中,当我将点放在第一个 Parent
之后时,我没有看到 oMailItem.Parent.Parent
,IntelliSense 不再提供 属性 Parent
。我尝试过转换,但没有成功,因为我对 VB.NET.
请指教
谢谢, 拉希德
属性 Parent 是 Object
类型,所以你必须先像这样将它转换为 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
.