Hallo Leute,
seit einiger Zeit beschäftigt mich das Problem.
Ich möchte über einen Ausdruck eine Datei als Anhang über den Standard-Mail-Client versenden. Dazu wurde in C++ ein virtueller Druckertreiber erstellt der wiederum eine DLL (in Delphi entwickelt) aufruft. In dieser DLL werden nun alle Konvertierungen vorgenommen und je nach Wunsch direkt an einen Mail-Server versand (dies funktioiert schon) oder über die Mapi an den Standard Mail Client. Folgendes habe ich schon versucht:
ShellExecute(0,'','mailTo: [email protected]',Nil,Nil,0);
Wenn der Mailclient geöffnet ist funktioniert es, allerdings weiß ich nicht wie es dann mit Anhang funktioniert.
Err := MapiSendMail(0 , 0, MapiMessage, MAPI_DIALOG or MAPI_LOGON_UI or MAPI_NEW_SESSION, 0);
gibt was auch immer ich versuche Err = 19 "Invalid Session" zurück, egal ob ich mit der eingebundenen Mapi oder SMapi oder auf Jedi angepasst versuche. Ich nehme an das es an der Systemebene des Druckertreibers liegt. Das ausführende Programm der DLL ist "spoolsv.exe" hier unter W2K
Nun die Frage: Was mach ich falsch ?
Wenn ich die DLL in ein normales Programm packe und die Funktion aufrufe klappt alles wunderbar.
Besten Dank schon mal.
---------------------
Gruß Eduard(at)Demont.de
seit einiger Zeit beschäftigt mich das Problem.
Ich möchte über einen Ausdruck eine Datei als Anhang über den Standard-Mail-Client versenden. Dazu wurde in C++ ein virtueller Druckertreiber erstellt der wiederum eine DLL (in Delphi entwickelt) aufruft. In dieser DLL werden nun alle Konvertierungen vorgenommen und je nach Wunsch direkt an einen Mail-Server versand (dies funktioiert schon) oder über die Mapi an den Standard Mail Client. Folgendes habe ich schon versucht:
ShellExecute(0,'','mailTo: [email protected]',Nil,Nil,0);
Wenn der Mailclient geöffnet ist funktioniert es, allerdings weiß ich nicht wie es dann mit Anhang funktioniert.
Err := MapiSendMail(0 , 0, MapiMessage, MAPI_DIALOG or MAPI_LOGON_UI or MAPI_NEW_SESSION, 0);
gibt was auch immer ich versuche Err = 19 "Invalid Session" zurück, egal ob ich mit der eingebundenen Mapi oder SMapi oder auf Jedi angepasst versuche. Ich nehme an das es an der Systemebene des Druckertreibers liegt. Das ausführende Programm der DLL ist "spoolsv.exe" hier unter W2K
Nun die Frage: Was mach ich falsch ?
Wenn ich die DLL in ein normales Programm packe und die Funktion aufrufe klappt alles wunderbar.
Besten Dank schon mal.
---------------------
Gruß Eduard(at)Demont.de
Comment