IMProcessMessage

Autor: Alexander Berger
Headerdatei: ims.h

Prototyp
Retcode_t API_FUNCTION IMProcessMessage(
   HWND                 parent,
   Flags_t              flags,
   Char_t*              appType,
   Char_t*              platform,
   Char_t*              sourceAddress,
   IMMessageId_t        messageId,
   IMLanguage_t         language,
   IMDetailLevel_t      detailLevel,
   UInt32_t             noOfInsertData,
   IMInsertData_s*      insertData,
   IMMessageResponse_t* messageResponse );

Kurzbeschreibung
Diese Funktion überträgt eine Nachricht an das IMS-System. Der Aufrufer weiß nicht, wie die Nachricht weiterbehandelt wird. Durch benutzerdefinierte Verknüpfungen kann diese Nachrichten an weitere Empfänger geleitet werden. Wird der Aufruf synchron ausgeführt, kann der Aufrufer im Parameter 'messageResponse' eine Antwort erwarten.

Parameter
parent - Handle eines Fensters. Falls lokal ein Nachrichtenfenster geöffnet werden soll, wird dieses als Child-Fenster dieses Fensters geöffnet. Dieser Parameter ist optional und kann auch 0 gesetzt werden.

flags - Flags, welche die Übertragung steuern. Gültig sind folgende Werte:

IMF_SHOW_LOCAL - Es soll lokal ein Nachrichtenfenster angezeigt werden.
IMF_LOG - Die Nachricht soll in das Eventlog von Windows NT vermerkt werden.
IMF_ASYNCHRON - Es soll nicht gewartet werden, bis alle Empfänger die Nachricht erhalten haben.

appType - Gibt den Anwendungstyp an, der diese Nachricht absetzt.

platform - Gibt die Plattform an, von welcher die Nachricht abgesetzt wird. Dieser Parameter ist optional und kann 0 gesetzt werden. In diesem Fall wird als Plattform der Name des Rechners angenommen, auf dem die Anwendung läuft.

sourceAddress - Eine anwendungsspezifische Quellenadresse. Dieser Parameter ist optional und kann auch 0 gesetzt werden, wenn die Anwendung kein eigenes Quellenmodul verwendet.

messageId - Die Identifikationsnummer der Nachricht, die angezeigt werden soll.

language - Die Sprache, in der die Nachricht lokal angezeigt werden soll. Dieser Parameter ist optional und kann auch 0 (bzw. auf die Konstante IMLUndefined) gesetzt werden. In diesem Fall wird die Sprache des Rechners verwendet, auf dem die Anwendung läuft.

detailLevel - Gibt den gewünschte Detailierungsgrad der Anzeige an. 0 entspricht der einfachsten Nachricht. Je höher die Nummer, desto detailierter die Nachricht.

noOfInsertData - Anzahl der Einfügedaten für diese Nachricht.

insertData - Zeiger auf ein Array vom Typ IMInsertData_s mit den Einfügedaten. Der IMS-Server wird diese Daten automatisch in die endgültige Nachricht einfügen.

messageResponse - Zeiger auf eine Variable, welche die Antwort bei synchroner Ausführung entgegennimmt. Die Antwort wird von einem Modul generiert, das einem Benutzer eine Auswahl erlaubt. Dieser Parameter ist optional und kann auch 0 gesetzt werden.

Rückgabewert:
Bei einer korrekten Verarbeitung RC_SUCCESS. Ansonsten einer der in 'errdefs.h' definierten Fehlercodes.

Anmerkungen:
Wenn die Funktion asynchron ausgeführt wird, bedeutet der Rückgabewert RC_SUCCESS lediglich, daß die Verarbeitung korrekt verlaufen ist. Die Nachricht muß noch nicht den Empfänger erreicht haben.