2012-06-22 17 views
6

में खोज क्वेरी करें नमस्ते मैं सोच रहा हूं कि मेरे WinForms ऐप से Outlook 2010 में एक खोज क्वेरी भेजना संभव है या नहीं। यही है, पीएसटी फ़ाइल की खोज न करें क्योंकि मैं चारों ओर खोज रहा हूं और खोज रहा हूं, मैं Outlook में परिणामों की एक सूची प्रदर्शित करने की कोशिश कर रहा हूं जैसे कि मैंने स्वयं खोज बॉक्स में टाइप किया है।आउटलुक

यदि यह संभव है, तो कोई भी उदाहरण कोड उपयोगी होगा। इसके अतिरिक्त, क्या आप सभी मेल आइटम्स बनाम सीधे खोज करना संभव है, आमतौर पर जब आप कोई खोज करते हैं तो यह वर्तमान फ़ोल्डर को कॉम्ब्स करता है। धन्यवाद।

उत्तर

8

यदि आप Outlook डेटा (उदाहरण के लिए मेल) तक पहुंचना चाहते हैं तो आपको Microsoft Outlook X.X ऑब्जेक्ट लाइब्रेरी में COM संदर्भ जोड़ना होगा।

आउटलुक के लिए आप COM interop का उपयोग कर सकते हैं। संदर्भ जोड़ें संवाद खोलें और .NET टैब का चयन करें, फिर Microsoft.Office.Interop.Outlook असेंबली का संदर्भ जोड़ें।

enter image description here

बाद में अपने खंड का उपयोग करने के नाम स्थान "Microsoft.Office.Interop.Outlook" जोड़ने के लिए मत भूलना।

अब आप Outlook आवेदन वस्तु का एक उदाहरण बना सकते हैं:

Microsoft.Office.Interop.Outlook.Application outlook; 
outlook = new Microsoft.Office.Interop.Outlook.Application(); 

के अपने इनबॉक्स पर एक क्वेरी निष्पादित करते हैं:

MAPIFolder folder = 
    outlook.GetNamespace("MAPI").GetDefaultFolder(OlDefaultFolders.olFolderInbox); 
    IEnumerable<MailItem> mail = 
     folder.Items.OfType<MailItem>().Where(m => m.Subject == "Test").Select(m => m); 

आप आप के लिए एक पैरामीटर के रूप खोज करना चाहते हैं फ़ोल्डर निर्दिष्ट GetDefaultFolder (...) विधि। आप इनबॉक्स के अलावा अन्य फ़ोल्डर निर्दिष्ट कर सकते हैं।

  • olFolderSentMail
  • olFolderOutbox
  • olFolderJunk
  • ...

चेक बाहर MSDN पर प्रत्येक संभव मूल्य:

OlDefaultFolders Enumeration

स्टीफन Cruysbergs बनाई गई एक OutlookProvider component जो Outlook अनुप्रयोग ऑब्जेक्ट के लिए रैपर के रूप में कार्य करता है। आप इस प्रदाता से पूछने के लिए LINQ का उपयोग कर सकते हैं और संपर्क, मेल ... आदि जैसे डेटा पुनर्प्राप्त कर सकते हैं .. बस download उसका कोड और इसे चेक आउट करें। यह आपको शुरू करने के लिए पर्याप्त होना चाहिए।

+1

हम्म यह काफी नहीं है जो मैं उम्मीद कर रहा था। मैं आउटलुक का एक उदाहरण बनाने से परिचित हूं, ऐसा लगता है कि यह क्वेरी के परिणामों के आवेदन पर वापस लौटने लगता है। इसके बजाय, मैं बस Outlook खोलना चाहता हूं, मेरे ऐप से एक खोज क्वेरी प्रदान करता हूं, और खुले उदाहरण में (या यदि खुला नहीं है, तो Outlook प्रारंभ करें) प्रदान की गई क्वेरी से खोज परिणाम दिखाएं। – ikathegreat

संबंधित मुद्दे