Also hier ist mein Code vllt hat ja einer ne Ahnung warum das mit der Mail nicht funzt.
Code:
int _tmain(void)
{
LPMAPISENDMAIL pfnSendMail;
MapiRecipDesc rdOriginator;
MapiRecipDesc rdRecipient[1];
LPMAPILOGOFF pfnLogoff;
LPMAPILOGON pfnLogon;
MapiMessage mapimsg;
HINSTANCE hDll;
LHANDLE lHnd;
MapiFileDesc mapifiledesc[2];
if(NULL == (hDll = LoadLibrary(TEXT("mapi32.DLL"))))
{
printf(TEXT("could not load mapi32.dll, ErrorCode: %u"), GetLastError());
return(0);
}
// Die Funktionen aus der DLL holen
pfnLogon = (LPMAPILOGON)GetProcAddress(hDll, "MAPILogon");
pfnLogoff = (LPMAPILOGOFF)GetProcAddress(hDll, "MAPILogoff");
pfnSendMail = (LPMAPISENDMAIL)GetProcAddress(hDll, "MAPISendMail");
pfnLogon(0, NULL, NULL, 0, 0, &lHnd); // Einloggen
mapimsg.ulReserved = 0;
mapimsg.lpszSubject = "Subject";
mapimsg.lpszNoteText = "text"; // EMailtext
mapimsg.lpszMessageType = NULL;
mapimsg.lpszDateReceived = NULL;
mapimsg.lpszConversationID = NULL;
mapimsg.flFlags = 0;
mapimsg.lpOriginator = &rdOriginator;
mapimsg.nRecipCount = 1;
mapimsg.lpRecips = rdRecipient;
mapimsg.nFileCount = 2; //2 Dateien anhängen
mapimsg.lpFiles = &mapifiledesc[0];
rdOriginator.ulReserved = 0;
rdOriginator.ulRecipClass = MAPI_ORIG;
rdOriginator.lpszName = "name";
rdOriginator.lpszAddress = "e mail adresse"; // Sender
rdOriginator.ulEIDSize = 0;
rdOriginator.lpEntryID = NULL;
rdRecipient[0].ulReserved = 0;
rdRecipient[0].ulRecipClass = MAPI_TO;
rdRecipient[0].lpszName = "name"; // Empfängername
rdRecipient[0].lpszAddress = "e mail adresse"; // Empfängeradresse
rdRecipient[0].ulEIDSize = 0;
rdRecipient[0].lpEntryID = NULL;
mapifiledesc[0].ulReserved = 0;
mapifiledesc[0].flFlags = 0;
mapifiledesc[0].nPosition = 0;
mapifiledesc[0].lpszPathName = "datei"; // Die erste Datei
// so heisst die Datei im Anhang des EMails
mapifiledesc[0].lpszFileName = "Datei";
mapifiledesc[0].lpFileType = 0;
// Für die 2te Datei kann man sich dann hierauf beschränken:
mapifiledesc[1].ulReserved = 0;
mapifiledesc[1].flFlags = 0;
mapifiledesc[1].nPosition = 0;
mapifiledesc[1].lpszPathName = "datei"; // Die zweite Datei
mapifiledesc[1].lpszFileName = "datei";
mapifiledesc[1].lpFileType = 0;
pfnSendMail(lHnd, 0
, &mapimsg, 0
, 0); // Das eigentliche Versenden
pfnLogoff(lHnd, 0, 0, 0); // Ausloggen
FreeLibrary(hDll);
return(0);
}