/ / अलग-अलग थ्रेड में आउटलुक एडिन चल रहा है - मल्टीथ्रेडिंग, आउटलुक, ऐड-इन

अलग थ्रेड में आउटलुक एडिन चलाना - मल्टीथ्रेडिंग, आउटलुक, ऐड-इन

मैं आउटलुक एडिन 2010 विकसित कर रहा हूं। जब कार्य फलक पर एक बटन पर क्लिक करें तो यह सर्वर से डेटा पुनर्प्राप्त करता है और डेटाग्रिड में प्रदर्शित करता है। लेकिन समय के दौरान डेटा और आउटलुक को जमा करने में 2 मिनट का समय लगा।

कृपया अलग थ्रेड में डेटा पुनर्प्राप्ति प्रक्रिया को चलाने के लिए कोई मेरी मदद कर सकता है? जहां उपयोगकर्ता पुनर्प्राप्त करते समय दृष्टिकोण का उपयोग कर सकता है।

उत्तर:

जवाब के लिए 0 № 1

ध्यान रखें कि आउटलुक ऑब्जेक्ट मॉडल नहीं हो सकता हैमुख्य आउटलुक धागे के अलावा अन्य थ्रेड्स से उपयोग किया जाता है। हालांकि यह कभी-कभी आउटलुक 2010 या पुराने में काम कर सकता है, जैसे ही यह पता चलता है कि आउटलुक 2013 से यह एक माध्यमिक धागे से एक्सेस हो रहा है, एक अपवाद बढ़ाएगा।

पहला सवाल यह है कि आपका कोड इतना लंबा क्यों है? क्या आपको एक बार में उस सभी डेटा को पुनः प्राप्त करना है? क्या आप ऐसा कर सकते हैं? आपका कोड क्या है? इसे कैसे अनुकूलित किया जा सकता है?

यदि माध्यमिक धागा आपका एकमात्र विकल्प है, तो आपको विस्तारित MAPI (C ++ या केवल डेल्फी) का उपयोग करने की आवश्यकता होगी या मोचन (कोई भी भाषा) - इसका वस्तुओं का RDO परिवार धागा सुरक्षित है। एक आउटलुक ऐडिन के लिए, आप आउटलुक से Namespace.MAPIOBJECT के मान को एक चर में स्टोर कर सकते हैं, फिर सेकेंडरी थ्रेड पर एक उदाहरण बना RDOSession ऑब्जेक्ट और उसके MAPIOBJECT गुण को Outlook के Namespace.MAPIOBJECT से प्राप्त मान पर सेट करें।