AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ist MAPI verfügbar?

Ein Thema von rollstuhlfahrer · begonnen am 6. Apr 2011 · letzter Beitrag vom 8. Apr 2011
 
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#1

Ist MAPI verfügbar?

  Alt 6. Apr 2011, 10:38
HI @all,

in meinem Programm soll eine Mail per MAPI verschickt werden (Klick auf Button). Das funktioniert auch soweit. Nun will ich noch erkennen, ob es überhaupt möglich ist, eine Mail per MAPI zu versenden. Leider schlagen meine Erkennungsversuche immer wieder fehl. Einfach den Wert in der Registry zu prüfen (wie das in der MAPI-Unit von Delphi passiert) reicht nicht aus, da in meiner VM kein Mail-Client installiert ist (auch nicht Outlook Express) und der Wert in der Registry trotzdem "1" ist. Was ich bis jetzt habe sieht so aus:

Delphi-Quellcode:
function IsMAPIEnabled: boolean;
var
  hkWMS: HKEY;
  MAPIValueSize: Longint;
  MAPIValueBuf: array[0..8] of char;
  rType: Longint;
  MAPISession: PLHANDLE;
begin
  Result := false;

  MAPIValueSize := sizeof(MAPIValueBuf);
  if RegOpenKeyEx(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows Messaging Subsystem',
      0, KEY_READ, hkWMS) <> ERROR_SUCCESS then Exit;
  if RegQueryValueEx(hkWMS, 'MAPI', nil, @rType, @MAPIValueBuf,
      @MAPIValueSize) <> ERROR_SUCCESS then Exit;
  RegCloseKey(hkWMS);
  if not ((MAPIValueBuf[0] = '1') and (MAPIValueBuf[1] = #0)) then Exit;

  MAPISession := nil;
  if MapiLogOn(0, nil, nil, 0, 0, MAPISession) <> SUCCESS_SUCCESS then Exit; // Das scheint nicht zu funktionieren
  MapiLogOff(MAPISession^, 0, 0, 0);

  Result := true;
end;
Wie erkennt man jetzt zuverlässig (möglichst ohne Try&Error), ob MAPI jetzt geht oder nicht?

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz