RxCeBuildConnectionOverMultipleTransports-Funktion (rxce.h)
RxCeBuildConnectionOverMultipleTransports stellt eine Verbindung zwischen einer lokalen RDBSS-Verbindungsadresse und einer bestimmten Remoteadresse her und unterstützt mehrere Transporte. Es wird eine Reihe lokaler Adressen angegeben, und diese Routine versucht, über alle Transporte, die den lokalen Adressen zugeordnet sind, eine Verbindung mit dem Zielserver herzustellen. Je nach Verbindungsoptionen wird eine Verbindung als Gewinner ausgewählt.
Syntax
NTSTATUS RxCeBuildConnectionOverMultipleTransports(
[in, out] IN OUT PRDBSS_DEVICE_OBJECT pMiniRedirectorDeviceObject,
IN RXCE_CONNECTION_CREATE_OPTIONS CreateOption,
[in] IN ULONG NumberOfAddresses,
[in] IN PRXCE_ADDRESS *pLocalAddressPointers,
[in] IN PUNICODE_STRING pServerName,
[in] IN PRXCE_CONNECTION_INFORMATION pConnectionInformation,
[in] IN PRXCE_CONNECTION_EVENT_HANDLER pHandler,
[in] IN PVOID pEventContext,
[in] IN PRXCE_CONNECTION_COMPLETION_ROUTINE pCompletionRoutine,
[in, out] IN OUT PRXCE_CONNECTION_COMPLETION_CONTEXT pCompletionContext
);
Parameter
[in, out] pMiniRedirectorDeviceObject
Ein Zeiger auf das Geräteobjekt des Miniumleitungsgeräts.
CreateOption
Erstellen Sie Optionen, die bestimmen, welcher Transport für die Einrichtung einer Verbindung ausgewählt wird. Diese Optionen können eine der folgenden Enumerationen für RXCE_CONNECTION_CREATE_OPTIONS sein:
- RxCeSelectFirstSuccessfulTransport
- RxCeSelectBestSuccessfulTransport
- RxCeSelectAllSuccessfulTransports
Wählen Sie den ersten erfolgreichen Transport aus, der antwortet.
Wählen Sie den besten erfolgreichen Transport aus, der antwortet.
Wählen Sie alle erfolgreichen Transporte aus, die antworten.
[in] NumberOfAddresses
Die Anzahl der lokalen Adressen (Transporte).
[in] pLocalAddressPointers
Ein Zeiger auf ein Array der lokalen Adressziehpunkte.
[in] pServerName
Ein Zeiger auf den Namen des Servers (für Verbindungsenumeration).
[in] pConnectionInformation
Ein Zeiger auf die Verbindungsinformationen, die die Remoteadresse angibt.
[in] pHandler
Ein Zeiger auf den Ereignishandler für die Verarbeitung von Empfangsanzeigen.
[in] pEventContext
Ein Zeiger auf den Kontextparameter, der an den Ereignishandler übergeben und für Indikationen verwendet wird.
[in] pCompletionRoutine
Ein Zeiger auf eine Verbindungsabschlussroutine, wenn diese Routine abgeschlossen wurde, wenn STATUS_PENDING anfänglich zurückgegeben wird.
[in, out] pCompletionContext
Bei eingabe enthält dieser Parameter einen Zeiger auf eine nicht initialisierte RXCE_CONNECTION_COMPLETION_CONTEXT Struktur. Wenn dieser Aufruf erfolgreich ist, wird der virtuelle Schaltkreis der Verbindung zugeordnet, und die virtuelle Verbindung und die Verbindung werden ordnungsgemäß initialisiert.
Rückgabewert
RxCeBuildConnectionOverMultipleTransports gibt STATUS_SUCCESS bei Erfolg oder einer der folgenden Fehlercodes für Fehler zurück:
Rückgabecode | Beschreibung |
---|---|
|
Fehler bei der Zuordnung des nicht ausseitigen Poolspeichers, der von dieser Routine benötigt wird. |
|
Es war nicht möglich, eine Verbindung und einen virtuellen Schaltkreis mit einem der mehrere Transporte zu initialisieren. Dieser Fehler kann auftreten, wenn alle RDBSS-Transporte oder die RBDSS-Verbindungsmoduladressen in der pLocalAddressPointers Array ungültig sind. |
|
Einer der Parameter, die an diese Routine übergeben wurden, war ungültig. |
|
Einer der asynchronen Aufrufe der verschiedenen Transporte, die als Eingabeparameter an die Routine übergeben werden, ist noch ausstehend und wurde nicht abgeschlossen. |
Bemerkungen
RxCeBuildConnectionOverMultipleTransports initiiert eine Reihe asynchroner Aufrufe aller verschiedenen Transporte, die als Parameter übergeben werden, um eine Verbindung zu testen und zu erstellen. Der Netzwerkminiumleitungs-Umleitungsmodul kann erst entladen werden, wenn alle diese asynchronen Anforderungen abgeschlossen sind.
RxCeBuildConnectionOverMultipleTransports- muss im Kontext eines Systemarbeitsthreads aufgerufen werden.
Wenn RxCeBuildConnectionOverMultipleTransports erfolgreich ist, wird die virtuelle Verbindung ordnungsgemäß initialisiert und Verbindungen hergestellt.
RXCE_CONNECTION_INFORMATION ist ein Typedef für eine TDI_CONNECTION_INFORMATION-Struktur.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | rxce.h (include Rxce.h) |
IRQL- | <= APC_LEVEL |