2013-01-02 3 views
5

मैं विंडोज 7 पर हूं और मेरे पास विंडोज़ लाइव हैं। अब जब मैं कोडwin32com.client.Dispatch ("Outlook.Aplication") त्रुटि pywintypes.com_error: (-2147221005, 'अवैध वर्ग स्ट्रिंग', कोई नहीं, कोई नहीं)

import win32com.client 
win32com.client.Dispatch("Outlook.Application") 

मैं त्रुटि निम्न हो रही है निम्नलिखित चलाने के लिए कोशिश कर रहा हूँ

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Python27\lib\site-packages\win32com\client\__init__.py", line 95, in 
Dispatch 
    dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,c 

    lsctx) 
     File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 108, in 
    _GetGoodDispatchAndUserName 
     return (_GetGoodDispatch(IDispatch, clsctx), userName) 
     File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 85, in _ 
    GetGoodDispatch 
     IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.II 
    D_IDispatch) 
    pywintypes.com_error: (-2147221005, 'Invalid class string', None, None) 

मैं Windows XP और Outlook स्थापित के साथ एक और मशीन है। मैंने एक ही कोड चलाया और मुझे एक ही त्रुटि मिली।

एक और सवाल। मैं विंडोज 7 पर विंडोज़ के कॉम को कैसे प्राप्त कर सकता हूं?

कोई भी सुझाव और टिप्पणियों की सराहना की जाएगी।

+0

क्या आप Win32com.client आयात से कुछ करने का प्रयास करते हैं कुछ डिस्पैच करें = डिस्पैच ("Outlook.Aplication") 'फिर भी आप इसे असाइन करने का प्रयास कर चुके हैं? – Yann

उत्तर

2

यह एक संकेत है कि Outlook स्थापित नहीं है। "windows live" या "outlook.com" आपकी मदद नहीं करेगा।

0

मुझे एक ही त्रुटि हो रही थी। क्या आपने Win32com के फ़ोल्डर से makepy.py को चलाने के लिए अलग-अलग COMobject के उपयोग के लिए प्रविष्टियां बनाने का प्रयास किया है? असल में, win32com सिर्फ उन सभी अनुप्रयोगों का इलाज करता है जिन्हें आप डिफ़ॉल्ट COMobjects के साथ इंटरैक्ट करते हैं जब तक आप इसे अपने कंप्यूटर पर स्थापित प्रोग्रामों के बारे में नहीं सीखते। आपको प्रत्येक प्रोग्राम के लिए makepy.py चलाने की आवश्यकता होगी जिसे आप इसके साथ नियंत्रित करना चाहते हैं।

मैं इसे चलाने के बाद, मुझे Outlook के लिए अधिक नियंत्रण तक पहुंच प्राप्त हुई। इसने अन्य त्रुटियों को खोला है कि मैं सही करने पर काम कर रहा हूं।

इसके अलावा, अगर आप अपने comobject (comboject = win32com.client.Dispatch ("Outlook.Application")) लेने के लिए और comboject._prop_map_get_.keys() को देखने के आप सभी चीजें आप कर सकते हैं देखेंगे उस कार्यक्रम के लिए उपयोग करें।

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