我怎样才能获得outlook contact的头像图片?

我正在尝试获取联系人的头像图像。

using Microsoft.Office.Interop.Outlook; public sealed class OutlookAvatarFetcher { private static void FetchAvatars() { var outlook = new Application(); var folder = outlook.GetNamespace("MAPI").GetDefaultFolder(OlDefaultFolders.olFolderContacts); var items = folder.Items; for (var i = 0; i < items.Count; ++i) { var contact = items[i + 1] as ContactItem; if (contact == null) continue; if (contact.HasPicture) { // TODO store the picture somehow. } } } } 

但不幸的是我找不到图片存取器。

您可以使用ContactItemattachments属性:

 contact.Attachments["ContactPicture.jpg"] 

例如,如果要将文件保存到磁盘,可以执行以下操作:

 contact.Attachments["ContactPicture.jpg"].SaveAsFile(@"{some_path}\ContactPicture.jpg") 

你的意思是来自Facebook或LinkedIn的图片?

您无法访问它 – MS没有为合法目的提供任何API来执行此操作。 请记住,这些数据来自第三方服务,很多律师都参与了这样的案件。