Funzione IoCheckFileObjectOpenedAsCopySource (ntifs.h)

La routine IoCheckFileObjectOpenedAsCopySource verifica se un file è stato aperto in precedenza con finalità di copia come file di origine.

Sintassi

BOOLEAN IoCheckFileObjectOpenedAsCopySource(
  [in] PFILE_OBJECT FileObject
);

Parametri

[in] FileObject

Puntatore all'oggetto file di origine per verificare la finalità di copia.

Valore restituito

IoCheckFileObjectOpenedAsCopySource restituisce TRUE se l'oggetto file rappresenta un file di origine aperto in precedenza con finalità di copia del file; in caso contrario, restituisce FALSE. Un valore restituito di TRUE segnala solo la finalità in fase di creazione; non significa che tutte le operazioni sull'oggetto file fanno parte di tutte le copie.

Commenti

Nell'esempio seguente viene illustrato come verificare se un oggetto file è stato aperto con la finalità di copia.


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);

Per altre informazioni, vedere Copia file in modalità kernel e rilevamento di scenari di file di copia .

Requisiti

Requisito Valore
Client minimo supportato Windows 11, versione 22H2
Intestazione ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL PASSIVE_LEVEL

Vedi anche

EXTENDED_CREATE_INFORMATION

IoCheckFileObjectOpenedAsCopyDestination

NtCopyFileChunk

NtCreateFile