Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我是否可以将成员作为联系人而不是使用Outlook OOM的一次性成员添加到Outlook.DistListItem?_C#_Outlook - Fatal编程技术网

C# 我是否可以将成员作为联系人而不是使用Outlook OOM的一次性成员添加到Outlook.DistListItem?

C# 我是否可以将成员作为联系人而不是使用Outlook OOM的一次性成员添加到Outlook.DistListItem?,c#,outlook,C#,Outlook,我在Outlook联系人文件夹中有一个联系人。无论我做什么,我只能将其作为一次性地址添加到通讯组列表中 Recipient.Resolve成功,但这没有帮助。此外,在我的测试中,它总是成功的,即使只是将任意电子邮件地址字符串传递给CreateRecipient方法,该方法在我的通讯簿中肯定没有任何共同点,因此看起来它实际上不起在通讯簿中查找联系人的作用。至少在我的Outlook 2010中是这样 // email denotes the email address of some contact

我在Outlook联系人文件夹中有一个联系人。无论我做什么,我只能将其作为一次性地址添加到通讯组列表中

Recipient.Resolve成功,但这没有帮助。此外,在我的测试中,它总是成功的,即使只是将任意电子邮件地址字符串传递给CreateRecipient方法,该方法在我的通讯簿中肯定没有任何共同点,因此看起来它实际上不起在通讯簿中查找联系人的作用。至少在我的Outlook 2010中是这样

// email denotes the email address of some contact in Contacts.
Outlook.Recipient member = _namespaceInstance.CreateRecipient(email);
if (member.Resolve())
{
    mapiDistList.AddMember(member);
}
mapiDistList.Save();

MAPI或其COM包装器(如Redemption)是创建真实联系人条目的唯一方法吗?

是的,它可以直接扩展MAPI来修改几个PT_MV_二进制属性,也可以在Redemption中添加.AddContact。

谢谢。您的意思是可以正常添加收件人,然后使用Ext.MAPI简单地调整某些属性吗?这是我能做的。您是否介意详细说明具体需要做什么?通讯组列表成员存储在两个PT_MV_二进制属性中使用OutlookSpy查看现有DL-单击IMessage按钮。一个列表是一次性条目id,即使联系人已离开,您也可以通过这种方式发送,另一个列表是本机通讯簿条目id。该条目id需要从IPM中生成。联系人消息条目id-OAB提供商条目id嵌入商店条目id加上额外属性,例如电子邮件索引,我能够成功地将条目从一次性更新为联系人:id=http://schemas.microsoft.com/mapi/id/{00062004-0000-0000-C000-0000000000 46}/80551102;var members=mapiDistList.PropertyAccessor.GetPropertyid;成员[i]=ToByteSwrappedPrefix+EntryDofcontactin问题;mapiDistList.PropertyAccessor.SetPropertyid;mapiDistList.Save;我甚至不需要直接使用Ext.MAPI,PropertyAccessor很好。我可能还需要更新PIDLIDDealDistListCalm和,但现在我的前景似乎很好,即使没有更新。你很幸运,微软忘记阻止该属性-他们这样做的属性,他们认为重要: