Freigeben über


FsRtlRemoveExtraCreateParameter-Funktion (ntifs.h)

Die FsRtlRemoveExtraCreateParameter-Routine durchsucht eine ECP-Liste nach einer ECP-Kontextstruktur und trennt sie, wenn sie gefunden wird, aus der ECP-Liste.

Syntax

NTSTATUS FsRtlRemoveExtraCreateParameter(
  [in, out]       PECP_LIST EcpList,
  [in]            LPCGUID   EcpType,
  [out]           PVOID     *EcpContext,
  [out, optional] ULONG     *EcpContextSize
);

Parameter

[in, out] EcpList

Zeiger auf die Liste extra create parameter (ECP), die die ECP-Kontextstruktur enthält, die von der angegebenen Liste getrennt werden soll.

[in] EcpType

Zeiger auf eine GUID, die die ECP-Kontextstruktur eindeutig identifiziert, die von der Liste getrennt werden soll.

[out] EcpContext

Zeiger auf die getrennte ECP-Kontextstruktur. Wenn die ECP-Kontextstruktur erfolgreich von der angegebenen Liste getrennt wurde, wird dieser Parameter so festgelegt, dass er auf die getrennte ECP-Kontextstruktur verweist. Wenn die ECP-Kontextstruktur in der angegebenen ECP-Liste nicht gefunden wird, wird dieser Parameter auf NULL festgelegt.

[out, optional] EcpContextSize

Optionaler Parameter, der die Größe der getrennten ECP-Kontextstruktur empfängt. Wenn dieser Parameter beim Aufruf der Routine vorhanden ist, empfängt der Parameter die Größe der getrennten ECP-Kontextstruktur in Bytes. Wenn die angegebene ECP-Kontextstruktur nicht in der angegebenen ECP-Liste gefunden wurde, ist dieser Parameter nicht definiert.

Rückgabewert

FsRtlRemoveExtraCreateParameter gibt einen NTSTATUS-Code wie einen der folgenden zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS Die angegebene ECP-Kontextstruktur wurde erfolgreich von der angegebenen ECP-Liste getrennt.
STATUS_NOT_FOUND Die angegebene ECP-Kontextstruktur wurde in der angegebenen ECP-Liste nicht gefunden.

Hinweise

Die FsRtlRemoveExtraCreateParameter-Routine durchsucht die vom EcpList-Parameter angegebene ECP-Liste nach einer ECP-Kontextstruktur, die vom EcpType-Parameter angegeben wird. Wenn die ECP-Kontextstruktur in der Liste vorhanden ist, trennt FsRtlRemoveExtraCreateParameter die Struktur von der Liste, legt den EcpContext-Parameter so fest, dass er auf die Struktur zeigt, und gibt STATUS_SUCCESS zurück. Wenn die ECP-Kontextstruktur nicht in der Liste vorhanden ist, legt FsRtlRemoveExtraCreateParameter den EcpContext-Parameter auf NULL fest und gibt STATUS_NOT_FOUND zurück.

Hinweis

FsRtlRemoveExtraCreateParameter gibt den Speicherpool nicht für die ECP-Kontextstruktur frei. Um den Speicherpool für die ECP-Kontextstruktur freizugeben, rufen Sie zuerst FsRtlRemoveExtraCreateParameter auf, um ihn von der Liste zu trennen, und rufen Sie dann die FltFreeExtraCreateParameter-Routine auf, um den Speicherpool für die ECP-Kontextstruktur freizugeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Die FsRtlRemoveExtraCreateParameter-Routine ist ab Windows Vista verfügbar.
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Weitere Informationen

ECP_LIST

FsRtlAllocateExtraCreateParameter

FsRtlAllocateExtraCreateParameterFromLookasideList

FltCreateFileEx2

FltFreeExtraCreateParameter

FltGetEcpListFromCallbackData

FltInsertExtraCreateParameter

FltRemoveExtraCreateParameter

FltSetEcpListIntoCallbackData

IoCreateFileEx