Freigeben über


IMAPISupport::RegisterPreprocessor

Gilt für: Outlook 2013 | Outlook 2016

Registriert die Präprozessorfunktion eines Transportanbieters (eine Funktion, die dem PreprocessMessage-Prototyp entspricht).

HRESULT RegisterPreprocessor(
LPMAPIUID lpMuid,
LPSTR lpszAdrType,
LPSTR lpszDLLName,
LPSTR lpszPreprocess,
LPSTR lpszRemovePreprocessInfo,
ULONG ulFlags
);

Parameter

lpMuid

[in] Ein Zeiger auf die MAPIUID-Struktur , die den Bezeichner enthält, den die Präprozessorfunktion verarbeitet. Der lpMuid-Parameter kann NULL sein.

lpszAdrType

[in] Ein Zeiger auf den Adresstyp für die Nachrichten, mit der die Funktion arbeitet, z. B. FAX, SMTP oder X500. Der lpszAdrType-Parameter kann NULL sein.

lpszDLLName

[in] Ein Zeiger auf den Namen der Dynamic Link Library (DLL), die den Einstiegspunkt für die Präprozessorfunktion enthält.

lpszPreprocess

[in] Ein Zeiger auf den Namen der Präprozessorfunktion. Der lpszPreprocess-Parameter kann NULL sein.

lpszRemovePreprocessInfo

[in] Ein Zeiger auf den Namen der Funktion, die Präprozessorinformationen entfernt (eine Funktion, die dem RemovePreprocessInfo-Prototyp entspricht). Der lpszRemovePreprocessInfo-Parameter kann NULL sein.

ulFlags

Reserviert; muss null sein.

Rückgabewert

S_OK

Die Präprozessorfunktion wurde erfolgreich registriert.

Hinweise

Die IMAPISupport::RegisterPreprocessor-Methode wird nur für Transportanbieterunterstützungsobjekte implementiert. Transportanbieter rufen RegisterPreprocessor auf, um eine Präprozessorfunktion zu registrieren (eine Funktion, die dem PreprocessMessage-Prototyp entspricht). Eine Präprozessorfunktion muss registriert werden, bevor der MAPI-Spooler sie aufrufen kann.

Die Parameter lpszPreprocess, lpszRemovePreprocessInfo und lpszDLLName sollten alle auf Zeichenfolgen verweisen, die in Verbindung mit Aufrufen der Win32 GetProcAddress-Funktion verwendet werden können, sodass der DLL-Einstiegspunkt des Präprozessors ordnungsgemäß aufgerufen werden kann.

Hinweise für Aufrufer

Aufrufe an Präprozessoren sind spezifisch für die Transportanbieterreihenfolge. Dies bedeutet, dass Ihre Präprozessorfunktion nicht für diese Nachricht aufgerufen wird, wenn ein anderer Transportanbieter vor Ihrem Anbieter in der Lage ist, eine Nachricht zu verarbeiten. Ihre Präprozessorfunktion wird nur für Nachrichten aufgerufen, die Sie behandeln.

Sie können Präprozessorfunktionen schreiben, um entweder einen bestimmten Bezeichner zu verarbeiten, der in einer MAPIUID-Struktur gespeichert ist, oder einen Adresstyp. Wenn Sie sowohl eine MAPIUID-Struktur im lpMuid-Parameter als auch einen Adresstyp im lpszAdrType-Parameter angeben, wird Ihre Funktion für Nachrichtenempfänger aufgerufen, die entweder der MAPIUID oder dem Adresstyp entsprechen. Wenn lpMuid NULL und lpszAdrType ungleich NULL ist, wird Ihre Funktion nur für Empfänger aufgerufen, die über eine Adresse verfügen, die mit dem Typ übereinstimmt, auf den lpszAdrType verweist. Wenn lpMuid ungleich NULL und lpszAdrType NULL ist, wird Ihre Funktion für Empfänger aufgerufen, die MAPIUID entsprechen, unabhängig von ihrem Adresstyp. Wenn beide NULL sind, wird Ihre Funktion für alle Empfänger der Nachricht aufgerufen.

Siehe auch

MAPIUID
PreprocessMessage
RemovePreprocessInfo
IMAPISupport: IUnknown