Auch wenn es bei Dir ja nun genau anders rum ist, daß Outlook funktioniert, vieleicht hift es Dir dennoch:
Ich hab riesige Probleme gehabt, den Mailversand via
MAPI Schnittstelle wieder zum Laufen zu bringen, wenn Outlook im Spiel war. War Thunderbird oder so als Mailclient eingetragen, kein Problem, nur Outlook hat gezickt (Hänger, Mailfenster öffnete sich nicht, ...).
Irgendwie scheint es nicht zu funktionieren, wenn der Mailversand in einem eigenen Thread ausgeführt wird. Die Lösung, die bei mir nun funktioniert: die Hauptanwendung startet eine externe Anwendung, die den Mailversand in ihrem Hauptthread ausführt.
Hier dann der Aufruf:
MapiSendMail(0, 0, MapiMessage, MAPI_DIALOG + MAPI_DIALOG_MODELESS + MAPI_LOGON_UI + MAPI_NEW_SESSION, 0);