RxCeBuildConnectionOverMultipleTransports-Funktion (rxce.h)
RxCeBuildConnectionOverMultipleTransports stellt eine Verbindung zwischen einer lokalen RDBSS-Verbindungsadresse und einer angegebenen Remoteadresse her und unterstützt mehrere Transporte. Es werden 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 Mini-Redirector-Geräteobjekt.
CreateOption
Erstellen Sie Optionen, die bestimmen, welcher Transport zum Herstellen 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 am besten erfolgreichen Transport aus, der antwortet.
Wählen Sie alle erfolgreichen Transporte aus, die reagieren.
[in] NumberOfAddresses
Die Anzahl der lokalen Adressen (Transporte).
[in] pLocalAddressPointers
Ein Zeiger auf ein Array der lokalen Adresshandles.
[in] pServerName
Ein Zeiger auf den Namen des Servers (für die Verbindungsenumeration).
[in] pConnectionInformation
Ein Zeiger auf die Verbindungsinformationen, der die Remoteadresse angibt.
[in] pHandler
Ein Zeiger auf den Ereignishandler für die Verarbeitung von Empfangsanzeigen.
[in] pEventContext
Ein Zeiger auf den Kontextparameter, der zurück an den Ereignishandler übergeben und für Hinweise verwendet werden soll.
[in] pCompletionRoutine
Ein Zeiger auf eine Verbindungsabschlussroutine, wenn diese Routine abgeschlossen wurde, wenn zunächst STATUS_PENDING zurückgegeben wird.
[in, out] pCompletionContext
Bei der Eingabe enthält dieser Parameter einen Zeiger auf eine nicht initialisierte RXCE_CONNECTION_COMPLETION_CONTEXT-Struktur. Bei der Ausgabe, wenn dieser Aufruf erfolgreich ist, wird die virtuelle Verbindung der Verbindung zugeordnet, und die virtuelle Verbindung und die Verbindung werden ordnungsgemäß initialisiert.
Rückgabewert
RxCeBuildConnectionOverMultipleTransports gibt bei Erfolg STATUS_SUCCESS oder einen der folgenden Fehlercodes bei Fehler zurück:
Rückgabecode | Beschreibung |
---|---|
|
Fehler bei der Zuordnung des nicht auslagerten Poolspeichers, der für diese Routine benötigt wird. |
|
Es war nicht möglich, eine Verbindung und eine virtuelle Verbindung mit einem der mehreren Transporte zu initialisieren. Dieser Fehler kann auftreten, wenn alle RDBSS-Transporte oder die Adressen der RBDSS-Verbindungs-Engine, auf die im pLocalAddressPointers-Array verwiesen wird, ungültig sind. |
|
Einer der an diese Routine übergebenen Parameter war ungültig. |
|
Einer der asynchronen Aufrufe der verschiedenen Transporte, die als Eingabeparameter an die Routine übergeben werden, steht noch aus und wurde nicht abgeschlossen. |
Hinweise
RxCeBuildConnectionOverMultipleTransports initiiert eine Reihe von asynchronen Aufrufen aller verschiedenen Transporte, die als Parameter übergeben werden, um eine Verbindung herzustellen. Der Netzwerkminiumleitungsor 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 es werden Verbindungen hergestellt.
RXCE_CONNECTION_INFORMATION ist eine Typdefinition für eine TDI_CONNECTION_INFORMATION-Struktur .
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | rxce.h (include Rxce.h) |
IRQL | <= APC_LEVEL |