Freigeben über


FsRtlRemoveExtraCreateParameter-Funktion (ntifs.h)

Die FsRtlRemoveExtraCreateParameter Routine durchsucht eine ECP-Liste nach einer ECP-Kontextstruktur und trennt sie ggf. 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

Zeigen Sie auf die zusätzliche Create-Parameterliste (ECP), die die ECP-Kontextstruktur enthält, die von der angegebenen Liste getrennt werden soll.

[in] EcpType

Zeigen Sie 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 wird, 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 vorhanden ist, wenn die Routine aufgerufen wird, empfängt der Parameter die Größe der getrennten ECP-Kontextstruktur in Bytes. Wenn die angegebene ECP-Kontextstruktur in der angegebenen ECP-Liste nicht 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.

Bemerkungen

Die FsRtlRemoveExtraCreateParameter Routine durchsucht die ECP-Liste, die vom EcpList Parameter für eine ECP-Kontextstruktur angegeben wird, die vom EcpType Parameter angegeben wird. Wenn die ECP-Kontextstruktur in der Liste vorhanden ist, legt FsRtlRemoveExtraCreateParameter die Struktur aus der Liste ab, legt den EcpContext Parameter so fest, dass er auf die Struktur verweist, und gibt STATUS_SUCCESS zurück. Wenn die ECP-Kontextstruktur in der Liste nicht vorhanden ist, legt FsRtlRemoveExtraCreateParameter den EcpContext Parameter auf NULL- fest und gibt STATUS_NOT_FOUND zurück.

Anmerkung

FsRtlRemoveExtraCreateParameter gibt den Speicherpool für die ECP-Kontextstruktur nicht 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
mindestens unterstützte Client- FsRtlRemoveExtraCreateParameter-Routine ist ab Windows Vista verfügbar.
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- <= APC_LEVEL

Siehe auch

ECP_LIST

FsRtlAllocateExtraCreateParameter

FsRtlAllocateExtraCreateParameterFromLookasideList

FltCreateFileEx2-

FltFreeExtraCreateParameter

FltGetEcpListFromCallbackData-

FltInsertExtraCreateParameter

FltRemoveExtraCreateParameter

FltSetEcpListIntoCallbackData

IoCreateFileEx-