2013-01-02 21 views
5

Windows 7'de yaşıyorum ve yüklü Windows yüklü var. Şimdi kodwin32com.client.Dispatch ("Outlook.Application") hatası pywintypes.com_error: (-2147221005, 'Geçersiz sınıf dizesi', Yok, Yok)

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

ben hata aşağıdaki alıyorum aşağıdaki çalıştırmak için çalışıyorum

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) 

Ben yüklü windows xp ve Outlook ile başka makine var. Aynı kodu çalıştırdım ve aynı hatayı aldım.

Bir soru daha. Windows 7 bilgisayarında Windows Live'ı nasıl alabilirim?

Herhangi bir öneri ve yorumunuz takdir edilecektir.

+0

win32com.client içe aktarma yapmaktan yapmaya çalışın Dispatch Something = Dispatch ("Outlook.Application") 'Sonra da atamayı denediniz mi? – Yann

cevap

2

Bu, Outlook'un yüklü olmadığını gösteren bir belirtidir. "windows live" veya "outlook.com" size yardımcı olmaz.

0

Benzer bir hata yaşıyordum. Kullandığınız farklı COMobject'lerin girişlerini oluşturmak için win32com klasöründen makepy.py çalıştırmayı denediniz mi? Temel olarak, win32com, etkileşimli olarak çalıştığınız tüm uygulamalara, bilgisayarınızda yüklü olan programlar hakkında bilgi edinene kadar varsayılan COMobjects olarak davranır. Kontrol etmek istediğiniz her program için makepy.py'yi çalıştırmanız gerekecek.

Çalıştırdıktan sonra Outlook için daha fazla kontrole eriştim. Düzeltme üzerinde çalıştığım başka hatalar açtı. Eğer (comboject = win32com.client.Dispatch ("Outlook.Application")) sizin comNesne alıp comboject._prop_map_get_.keys() bakarsak

Ayrıca size gelen her şeyi göreceksiniz Bu program için kullanın.

İlgili konular