Vbscript 获取特定电子邮件地址的联系信息
我正试图写一个脚本,可以Vbscript 获取特定电子邮件地址的联系信息,vbscript,outlook,Vbscript,Outlook,我正试图写一个脚本,可以 浏览我的域中的电子邮件地址列表 对于每封电子邮件,addressess都会获得显示名称和职务 将电子邮件、显示名称、职务输出到csv文件 我相信这相当简单,我这里唯一的问题是我不知道如何访问联系人的联系人卡 如何将strAddress变量传递给olContactItem对象 编辑: 为了改进问题-我不知道如何查看现有联系人的联系人user@mydomain.com来自csv文件中的电子邮件地址列表(未添加到我的联系人列表或任何内容) 到目前为止,我掌握的代码是: Con
strAddress
变量传递给olContactItem
对象
编辑:
为了改进问题-我不知道如何查看现有联系人的联系人user@mydomain.com来自csv文件中的电子邮件地址列表(未添加到我的联系人列表或任何内容)
到目前为止,我掌握的代码是:
Const olContactItem = 2
strEmail = "user@mydomain.com"
set fso = CreateObject("Scripting.FileSystemObject")
set appOutlook = CreateObject("Outlook.Application")
Set MyItem = appOutlook.CreateItem(olContactItem)
With MyItem
.Email1Address = strEmail
.jobTitle = strJobTitleVar
End With
我需要打开那个人的addess book页面,将职务和显示名称的值提取到相关变量中。然而,我被卡住了,因为我到了一个地步,我宁愿添加一个新的联系人,而不是查看现有的人的信息
这更清楚吗?如何在通讯簿中搜索特定人员的信息?请尝试以下方法。要查看其他属性及其DASL名称,请使用查看live GAL对象:单击IAddrBook按钮并向下钻取容器层次结构,或单击Imapisence | QueryIdentity查看当前用户,或(如果您与特定收件人有消息)单击IMessage,转到GetRecipientTable表,对收件人加倍。
一旦有了iMail用户窗口,请选择所需的属性并查看DASL编辑框
Const olContactItem = 2
strEmail = "user@mydomain.com"
set fso = CreateObject("Scripting.FileSystemObject")
set appOutlook = CreateObject("Outlook.Application")
set NS = appOutlook.GetNamespace("MAPI")
NS.Logon
set Recip = NS.CreateRecipient(strEmail)
Recip.Resolve
set AE = Recip.AddressEntry
Set MyItem = appOutlook.CreateItem(olContactItem)
With MyItem
.Email1Address = strEmail
'read PR_TITLE property
.jobTitle = AE.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3A17001F")
最后回答我自己的问题-这似乎是我所需要的一切:
strInputEmail = objInputFile.ReadLine
set appOutlook = CreateObject("Outlook.Application")
set objNameSpace = appOutlook.GetNameSpace("MAPI")
set objContacts = objNameSpace.GetDefaultFolder(olFolderContacts)
Set objContact = objContacts.Items.Find("[IMAddress] = """ & strInputEmail & """")
strFullName = objContact.FullName
strJobTitle = objContact.JobTitle
strBusinessAddress = objContact.BusinessAddress
msgBox strFullName & strJobTitle & strBusinessAddress
它读取输入文件,获取电子邮件地址作为变量,查找人员,获取特定信息作为变量
无论如何,谢谢你的帮助 我不知道你的问题是什么;从GAL的AddressEntry对象检索数据时是否遇到问题?或在已创建的ContactItem对象上设置各种属性?我不知道如何为特定电子邮件地址调用ContactItem对象,然后从此对象检索多个属性,即显示名称、标题等。请使用Namespace.CreateItem或MAPIFolder.Items.Add创建ContactItem。然后,您可以使用显式公开的属性(AddressEntry.Name等)读取各种属性,或者使用AddressEntry.PropertyAccessor.GetProperty读取原始扩展MAPI属性。我改进了我的问题-这更清楚吗?谢谢