Freigeben über


IoCheckFileObjectOpenedAsCopySource-Funktion (ntifs.h)

Die IoCheckFileObjectOpenedAsCopySource Routine überprüft, ob eine Datei zuvor mit Kopierabsicht als Quelldatei geöffnet wurde.

Syntax

BOOLEAN IoCheckFileObjectOpenedAsCopySource(
  [in] PFILE_OBJECT FileObject
);

Parameter

[in] FileObject

Zeigen Sie auf das Quelldateiobjekt, um nach Kopierabsicht zu suchen.

Rückgabewert

IoCheckFileObjectOpenedAsCopySource TRUE zurück, wenn das Dateiobjekt eine Quelldatei darstellt, die zuvor mit Kopierdateiabsicht geöffnet wurde; andernfalls wird FALSE zurückgegeben. Ein Rückgabewert von TRUE signalisiert nur die Absicht zur Erstellungszeit; es bedeutet nicht, dass alle Vorgänge für das Dateiobjekt Teil von Kopien sind.

Bemerkungen

Das folgende Beispiel zeigt, wie Sie überprüfen, ob ein Dateiobjekt mit Kopierabsicht geöffnet wurde.


typedef  
BOOLEAN (*PIO_CHECK_FILE_OBJECT_OPENED_AS_COPY_SOURCE)( 
    _In_ PFILE_OBJECT FileObject 
); 
typedef  
BOOLEAN (*PIO_CHECK_FILE_OBJECT_OPENED_AS_COPY_DESTINATION)( 
    _In_ PFILE_OBJECT FileObject 
); 

PIO_CHECK_FILE_OBJECT_OPENED_AS_COPY_SOURCE IoCheckFileObjectOpenedAsCopySource; 
PIO_CHECK_FILE_OBJECT_OPENED_AS_COPY_DESTINATION IoCheckFileObjectOpenedAsCopyDestination;

// First resolve the API 
RtlInitUnicodeString(&RoutineName, L"IoCheckFileObjectOpenedAsCopySource"); 
IoCheckFileObjectOpenedAsCopySource = (PIO_CHECK_FILE_OBJECT_OPENED_AS_COPY_SOURCE)MmGetSystemRoutineAddress(&RoutineName); 

RtlInitUnicodeString(&RoutineName, L"IoCheckFileObjectOpenedAsCopyDestination"); 
IoCheckFileObjectOpenedAsCopyDestination = (PIO_CHECK_FILE_OBJECT_OPENED_AS_COPY_DESTINATION)MmGetSystemRoutineAddress(&RoutineName); 

// Now use the API 
IoCheckFileObjectOpenedAsCopySource(FltObjects->FileObject); 
IoCheckFileObjectOpenedAsCopyDestination(FltObjects->FileObject);

Weitere Informationen finden Sie unter Kernelmodusdateikopie und Erkennen von Kopierdateiszenarien.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 11, Version 22H2
Header- ntifs.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
IRQL- PASSIVE_LEVEL

Siehe auch

EXTENDED_CREATE_INFORMATION

IoCheckFileObjectOpenedAsCopyDestination

NtCopyFileChunk-

NtCreateFile-