none
in MFC Programmen ist Menüpunkt EMail disabled obwohl "Senden an Emailempfänger" im Explorer geht RRS feed

  • Frage

  • Hi,

    ich habe jetzt endlich auch einen Test-PC, auf dem ich das Problem dass einige Kunden haben
    nachstellen kann.

    Es ist Outlook installiert und auch als Standard eingetragen.
    Vom Explorer kann ich "Senden an Email-Empfänger" anwählen und bekomme
    dann die Outlook-Dialogbox.

    In meinen Programmen und im Windows-Editor fehlt der Menüeintrag. In Paint/Wordpad
    ist dieser disabled.
    Scheinbar verwenden alle die MFC-Implementierung
    _afxIsMailAvail = ::GetProfileInt(_T("MAIL"), _T("MAPI"), 0) != 0 &&
        SearchPath(NULL, _T("MAPI32.DLL"), NULL, 0, NULL, NULL) != 0;

    Leider scheint zumindest die Outlook 2013-Installation  den "MAPI"-Eintrag nicht (mehr?) zu setzen.

    Was tun?
    Alle Meiner Doc-Klassen von CMyMailDoc ableiten mit eigener OnUpdateFileSendMail-Implementierung?
    An die lokale Variable _afxIsMailAvail komme ich ja leider nicht ran (oder doch?).
    Den Ini-Eintrag [MAIL] MAPI=1 einfach setzen?

    Falls ich doch einen eigenen Update-Handler schreibe: Wann ist denn ein EMail-Programm installiert?
    Wenn in HKCU\Software\Clients\Mail was drin steht (und die MAPI32.dll gefunden wird)?

    Tschüß, Holger.

    Dienstag, 11. Juni 2013 08:36

Alle Antworten

  • hm, ich denke dass es wirklich ein Bug der MFC ist.
    Seit langem habe ich doch mal wieder in die win.ini reingesehen.
    Dort steht doch tatsächlich der Kommentar
    for 16-bit app support
    .. ich wusste gar nicht, dass wir mit aktuellen VS noch 16bit MFC-Apps schreiben können...
    Dementsprechend sollte die MFC diesen Wert auch nicht abfragen.
    Allerdings weiss ich immer noch nicht, was ich am besten mache.

    Tschüß, Holger.

    Mittwoch, 12. Juni 2013 10:24