Vbscript 从outlook邮箱读取电子邮件
Outlook产品版本:16.0.1073020348 所以我制作了一个脚本来阅读电子邮件并将它们插入数据库 问题:脚本当前正在从我的Inboxred标志读取,而不是从shared mailboxblue标志读取 所需解决方案:选中共享邮箱蓝色标志 目前,我的代码如下所示:Vbscript 从outlook邮箱读取电子邮件,vbscript,outlook,scripting,Vbscript,Outlook,Scripting,Outlook产品版本:16.0.1073020348 所以我制作了一个脚本来阅读电子邮件并将它们插入数据库 问题:脚本当前正在从我的Inboxred标志读取,而不是从shared mailboxblue标志读取 所需解决方案:选中共享邮箱蓝色标志 目前,我的代码如下所示: Set objOutlook = CreateObject("Outlook.Application") Set objNamespace = objOutlook.GetNamespace("MAPI") 'PROBLE
Set objOutlook = CreateObject("Outlook.Application")
Set objNamespace = objOutlook.GetNamespace("MAPI")
'PROBLEM HERE I GUESS
Set objFolder = objNamespace.GetDefaultFolder(6) 'Inbox
Set colItems = objFolder.Items
Set colFilteredItems = colItems.Restrict("[Unread]=true")
Set colFilteredItems = colFilteredItems.Restrict("[Subject] = SUBJECT")
For k = colFilteredItems.Count to 1 step -1
set objMessage = colFilteredItems.Item(k)
'....
next
谢谢你的帮助
尝试了@josefZ建议的方法,但仍在努力
第一次尝试在最后一行失败:
Set myRecipient = objNamespace.CreateRecipient("mailbox@mail.com")
myRecipient.Resolve
Set objFolder = objNamespace.GetSharedDefaultFolder(myRecipient,olFolderInbox).Folders("Bandeja de Entrada")
像这样的工作:
Set myRecipient = objNamespace.CreateRecipient("mailbox@mail.com")
myRecipient.Resolve
Set objFolder = objNamespace.GetSharedDefaultFolder(myRecipient,6) 'inbox
您可以使用GetSharedDefaultFolder,或者,由于代理存储已在配置文件中打开,因此可以从命名空间中检索代理邮箱。Stores集合并使用store.GetDefaultFolder而不是Namespace.GetDefaultFolder。应用而不是GetDefaultFolder one?@JosefZ尝试过,但出现一些错误,更新的问题你能查一下吗?@JosefZ nevermind