Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Von der Verwendung dieser Funktion wird abgeraten. Sie kann in nachfolgenden Versionen von Windows geändert oder nicht verfügbar sein.]
Die MAPIReadMail-Funktion ruft eine Nachricht zum Lesen ab.
Syntax
MAPIREADMAIL Mapireadmail;
ULONG Mapireadmail(
[in] LHANDLE lhSession,
[in] ULONG_PTR ulUIParam,
[in] LPSTR lpszMessageID,
[in] FLAGS flFlags,
ULONG ulReserved,
lpMapiMessage *lppMessage
)
{...}
Parameter
[in] lhSession
Verarbeiten sie eine einfache MAPI-Sitzung. Der Wert des lhSession-Parameters muss eine gültige Sitzung darstellen. es darf nicht 0 sein.
[in] ulUIParam
Übergeordnetes Fensterhandle oder Null, das angibt, dass es sich bei der Anzeige eines Dialogfelds um ein Modal der Anwendung handelt. Wenn der ulUIParam-Parameter ein übergeordnetes Fensterhandle enthält, ist er vom Typ HWND (in eine ULONG_PTR umgewandelt). Wenn während des Anrufs kein Dialogfeld angezeigt wird, wird ulUIParam ignoriert.
[in] lpszMessageID
Zeiger auf eine Nachrichtenbezeichnerzeichenfolge für die zu lesende Nachricht. Die Zeichenfolge wird vom Aufrufer zugeordnet.
[in] flFlags
Bitmaske von Optionsflags. Die folgenden Flags können festgelegt werden.
| Wert | Bedeutung |
|---|---|
|
MAPIReadMail sollte den Nachrichtentext in eine temporäre Datei schreiben und als erste Anlage in der Anlageliste hinzufügen. |
|
MAPIReadMail sollte nur den Nachrichtenheader lesen. Dateianlagen werden nicht in temporäre Dateien kopiert, und weder temporäre Dateinamen noch Nachrichtentext werden geschrieben. Das Festlegen dieses Flags verbessert die Leistung. |
|
MAPIReadMail markiert die Nachricht nicht als gelesen. Das Markieren einer Nachricht als gelesen wirkt sich auf die Darstellung in der Benutzeroberfläche aus und generiert einen Lesebeleg. Wenn das Messagingsystem dieses Flag nicht unterstützt, markiert MAPIReadMail die Nachricht immer als gelesen. Wenn BEI MAPIReadMail ein Fehler auftritt, bleibt die Nachricht ungelesen. |
|
MAPIReadMail sollte keine Dateianlagen kopieren, sondern Nachrichtentext in die MapiMessage-Struktur schreiben. MAPIReadMail ignoriert dieses Flag, wenn die aufrufende Anwendung das MAPI_ENVELOPE_ONLY-Flag festgelegt hat. Das Festlegen des MAPI_SUPPRESS_ATTACH-Flags verbessert die Leistung. |
ulReserved
Reserviert; muss null sein.
lppMessage
Rückgabewert
Diese Funktion gibt einen der folgenden Werte zurück.
| Rückgabecode | Beschreibung |
|---|---|
|
Eine Anlage konnte nicht in eine temporäre Datei geschrieben werden. Überprüfen Sie die Verzeichnisberechtigungen. |
|
Eine Anlage konnte nicht in eine temporäre Datei geschrieben werden, da auf dem Datenträger nicht genügend Speicherplatz vorhanden war. |
|
Mindestens ein nicht angegebener Fehler ist beim Lesen der Nachricht aufgetreten. |
|
Es war nicht genügend Arbeitsspeicher vorhanden, um die Nachricht zu lesen. |
|
Im Parameter lpszMessageID wurde ein ungültiger Nachrichtenbezeichner übergeben. |
|
Im lhSession-Parameter wurde ein ungültiges Sitzungshandle übergeben. Es wurde keine Nachricht abgerufen. |
|
Die Nachricht enthält zu viele Dateianlagen. Die Nachricht konnte nicht gelesen werden. |
|
Es gab zu viele Empfänger der Nachricht. Die Nachricht konnte nicht gelesen werden. |
|
Der Aufruf war erfolgreich, und die Nachricht wurde gelesen. |
Hinweise
Die MAPIReadMail-Funktion gibt eine Nachricht zurück, wobei der Nachrichteninhalt in dieselben Parameter und Strukturen unterteilt wird, die in der MAPISendMail-Funktion verwendet werden. MAPIReadMail füllt einen Speicherblock mit der MapiMessage-Struktur aus, die Nachrichtenelemente wie Betreff, Nachrichtenklasse, Lieferzeit und Absender enthält. Dateianlagen werden in temporären Dateien gespeichert, und die Namen werden an den Aufrufer in der Nachrichtenstruktur zurückgegeben. Empfänger, Anlagen und Inhalte werden aus der Nachricht kopiert, bevor MAPIReadMail an den Aufrufer zurückgibt, sodass spätere Änderungen an den Dateien sich nicht auf den Inhalt der Nachricht auswirken.
Ein Flag wird bereitgestellt, um anzugeben, dass nur Umschlaginformationen vom Aufruf zurückgegeben werden sollen. Ein anderes Flag (in der MapiMessage-Struktur ) gibt an, ob die Nachricht als gesendet oder nicht gekennzeichnet ist.
Der Aufrufer ist für das Freigeben der MapiMessage-Struktur verantwortlich, indem er die MAPIFreeBuffer-Funktion aufruft und alle Dateien löscht, die mit anlagen verknüpft sind, die in der Nachricht enthalten sind.
Verwenden Sie vor dem Aufrufen von MAPIReadMail die MAPIFindNext-Funktion , um zu überprüfen, ob die zu lesende Nachricht diejenige ist, die Sie lesen möchten. Da Nachrichtenbezeichner systemspezifisch und undurchsichtig sind und jederzeit ungültig werden können, betrachtet MAPIReadMail einen Nachrichtenbezeichner nur für die aktuelle Einfache MAPI-Sitzung als gültig.
Requirements (Anforderungen)
| Zielplattform | Windows |
| Kopfzeile | mapi.h |