Nếu bạn muốn truy cập dữ liệu Outlook (ví dụ thư), bạn phải thêm tham chiếu COM vào thư viện đối tượng Microsoft Outlook X.X.
Đối với Outlook, bạn có thể sử dụng COM interop. Mở hộp thoại Add Reference và chọn tab .NET, sau đó thêm một tham chiếu đến Microsoft.Office.Interop.Outlook assembly.

Sau đó đừng quên để thêm không gian tên "Microsoft.Office.Interop.Outlook" để sử dụng khoản của bạn.
Bây giờ bạn có thể tạo một thể hiện của đối tượng ứng dụng Outlook:
Microsoft.Office.Interop.Outlook.Application outlook;
outlook = new Microsoft.Office.Interop.Outlook.Application();
Hãy thực hiện một truy vấn trên hộp thư của bạn:
MAPIFolder folder =
outlook.GetNamespace("MAPI").GetDefaultFolder(OlDefaultFolders.olFolderInbox);
IEnumerable<MailItem> mail =
folder.Items.OfType<MailItem>().Where(m => m.Subject == "Test").Select(m => m);
Bạn chỉ rõ thư mục mà bạn muốn tìm kiếm như một tham số cho phương thức GetDefaultFolder (...). Bạn có thể chỉ định thư mục khác ngoài hộp thư đến.
- olFolderSentMail
- olFolderOutbox
- olFolderJunk
- ...
Check-out mỗi giá trị có thể có trên MSDN:
OlDefaultFolders Enumeration
Stefan Cruysbergs tạo OutlookProvider component hoạt động như một trình bao bọc cho đối tượng ứng dụng Outlook. Bạn có thể sử dụng LINQ để truy vấn nhà cung cấp này và truy xuất dữ liệu như danh bạ, thư ... vv .. Chỉ cần download mã của anh ấy và kiểm tra. Điều này là đủ để bạn bắt đầu.
Nguồn
2012-06-22 18:29:19
hmm đây không phải là điều tôi mong đợi. Tôi quen thuộc với việc tạo một thể hiện của Outlook, điều này dường như quay trở lại ứng dụng các kết quả của truy vấn. Thay vào đó, tôi muốn chỉ cần mở Outlook, cung cấp truy vấn tìm kiếm từ ứng dụng của tôi và trong cá thể đang mở (hoặc nếu không mở, bắt đầu Outlook) sẽ hiển thị kết quả tìm kiếm từ truy vấn được cung cấp. – ikathegreat