RxCreateVNetRoot-Funktion (fcb.h)
RxCreateVNetRoot weist und initialisiert eine NET_ROOT-Struktur und fügt den Namen in die Net Name-Tabelle des zugeordneten Geräteobjekts ein.
Syntax
PV_NET_ROOT RxCreateVNetRoot(
[in] IN PRX_CONTEXT RxContext,
[in] IN PNET_ROOT NetRoot,
[in] IN PUNICODE_STRING CanonicalName,
[in] IN PUNICODE_STRING LocalNetRootName,
[in] IN PUNICODE_STRING FilePath,
[in] IN PRX_CONNECTION_ID RxConnectionId
);
Parameter
[in] RxContext
Ein Zeiger auf die RDBSS-RX_CONTEXT, die den IRP enthält, der einen Erstellungsvorgang beschreibt.
[in] NetRoot
Ein Zeiger auf die zugeordnete NET_ROOT-Struktur.
[in] CanonicalName
Ein Zeiger auf den kanonischen Namen, der in die Namenstabelle eingefügt werden soll.
[in] LocalNetRootName
Ein Zeiger auf den lokalen NET_ROOT Namen ohne präfixnamen.
[in] FilePath
Ein Zeiger auf einen Dateipfadnamen. Dieser Parameter wird derzeit nicht verwendet und kann NULL sein.
[in] RxConnectionId
Ein Zeiger auf die Verbindungs-ID, die dem Namen zugeordnet werden soll, der in die Präfixnamentabelle eingefügt werden soll. Dieser Parameter kann NULL sein. In diesem Fall wird keine Verbindungs-ID dem in die Namenstabelle eingefügten Namen zugeordnet.
Rückgabewert
RxCreateVNetRoot gibt einen Zeiger auf eine neu erstellte V_NET_ROOT Datenstruktur bei Erfolg oder einen NULL-Zeiger bei Fehler zurück.
Hinweise
Die RxCreateVNetRoot-Routine wird normalerweise nicht direkt von Netzwerk-Miniumleitungstreibern aufgerufen. RDBSS ruft diese Routine intern auf, wenn ein E/A-Anforderungspaket für IRP_MJ_CREATE empfangen wird und ein V_NET_ROOT erstellt werden muss. Diese IRP wird normalerweise von RDBSS als Reaktion auf eine Benutzermodusanwendung empfangen, die einen Dateierstellungsvorgang für eine Netzwerkfreigabe anfordert. Es ist auch möglich, dass ein anderer Kerneltreiber eine solche IRP ausgibt.
Vor dem Aufrufen von RxCreateVNetRoot muss eine Sperre für die Namenstabelle, die dem Element des Geräteobjekts des RxContext-Parameters zugeordnet ist, im exklusiven Modus abgerufen werden.
RxCreateVNetRoot legt eine Vielzahl von Sicherheitskontextparametern für die V_NET_ROOT-Struktur basierend auf Parametern aus dem RX_CONTEXT fest. Zu diesen Parametern gehören: LogonId, SessionId, pUserName, pUserDomainName, pPassword und Flags.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | fcb.h (include Rxcontx.h, Mrxfcb.h, Prefix.h, Struchdr.h, Fcb.h) |
IRQL | <= APC_LEVEL |