RxCreateSrvCall-Funktion (fcb.h)
RxCreateSrvCall erstellt eine SRV_CALL-Struktur und fügt den Namen in die von RDBSS verwaltete Net Name-Tabelle ein.
Syntax
PSRV_CALL RxCreateSrvCall(
IN PRX_CONTEXT RxContext,
IN PUNICODE_STRING Name,
IN PUNICODE_STRING InnerNamePrefix,
IN PRX_CONNECTION_ID RxConnectionId
);
Parameter
RxContext
[in] Ein Zeiger auf die RX_CONTEXT-Struktur, die den IRP enthält, der einen Erstellungsvorgang beschreibt.
Name
[in] Ein Zeiger auf den Namen, der in die Namenstabelle eingefügt werden soll.
InnerNamePrefix
Ein Zeiger auf einen optionalen inneren Präfixnamen, der mit dem Namen in die Namenstabelle eingefügt werden soll.
RxConnectionId
[in] 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 Präfixnamentabelle eingefügten Namen zugeordnet.
Rückgabewert
RxCreateSrvCall gibt einen Zeiger auf eine neu erstellte SRV_CALL Datenstruktur bei Erfolg oder einen NULL-Zeiger bei Fehler zurück.
Hinweise
Die RxCreateSrvCall-Routine wird normalerweise nicht direkt von Netzwerk-Mini-Redirector-Treibern aufgerufen. RDBSS ruft diese Routine intern auf, wenn ein E/A-Anforderungspaket für IRP_MJ_CREATE empfangen wird und ein SRV_CALL 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 RxCreateSrvCall muss eine Sperre für die Namenstabelle, die dem Element des Geräteobjekts des RxContext-Parameters zugeordnet ist, im exklusiven Modus abgerufen werden.
RxCreateSrvCall initialisiert die Serveraufrufparameter, die über erweiterte Attribute als Teil der zugeordneten RX_CONTEXT-Struktur übergeben werden. Derzeit umfasst dies das Initialisieren des pPrincipalName-Members des SRV_CALL das vom DFS-Treiber übergeben wird.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | fcb.h (include Rxcontx.h, Mrxfcb.h, Prefix.h, Fcb.h) |
IRQL | <= APC_LEVEL |