struttura MARK_HANDLE_INFO (ntifs.h)

Una struttura MARK_HANDLE_INFO viene passata come buffer di input durante una richiesta di codice di controllo FSCTL_MARK_HANDLE .

Sintassi

typedef struct _MARK_HANDLE_INFO {
  union {
    ULONG UsnSourceInfo;
    ULONG CopyNumber;
  } DUMMYUNIONNAME;
  ULONG  UsnSourceInfo;
  HANDLE VolumeHandle;
  ULONG  HandleInfo;
} MARK_HANDLE_INFO, *PMARK_HANDLE_INFO;

Members

DUMMYUNIONNAME

DUMMYUNIONNAME.UsnSourceInfo

Vedere UsnSourceInfo di seguito.

DUMMYUNIONNAME.CopyNumber

Identifica la copia di un file da leggere durante la lettura da un file che si trova su supporti ridondanti.

UsnSourceInfo

Flag di informazioni di origine (USN) del numero di sequenza di aggiornamento facoltativo. Per impostare uno di questi valori, è necessario specificare un handle DASD del volume nel campo VolumeHandle . Può essere una combinazione dei valori seguenti:

Contrassegno Significato
USN_SOURCE_DATA_MANAGEMENT Il servizio non modifica la visualizzazione esterna di nessuna parte del file. Il caso tipico è lo spostamento di dati da e verso l'archiviazione esterna.
USN_SOURCE_AUXILIARY_DATA Il servizio non modifica la visualizzazione esterna del file in relazione all'applicazione che ha creato questo file. Può essere usato per aggiungere flussi di dati privati a un file.
USN_SOURCE_REPLICATION_MANAGEMENT Il servizio sta modificando un file in modo che corrisponda al contenuto dello stesso file presente in un altro membro del set di repliche.
USN_SOURCE_CLIENT_REPLICATION_MANAGEMENT La replica viene eseguita nei sistemi client dal cloud o dai server. Non è necessario un handle di volume per impostare questo valore

VolumeHandle

Handle del volume per questa operazione.

HandleInfo

Contiene flag per identificare la richiesta. Questo campo può essere uno dei valori seguenti:

Contrassegno Significato
MARK_HANDLE_PROTECT_CLUSTERS Non consentire la deframmentazione (FSCTL_MOVE_FILE) fino alla chiusura dell'handle.
MARK_HANDLE_TXF_SYSTEM_LOG Questo flusso viene usato come log Txf per un gestore risorse nel volume. Deve essere chiamato nel kernel usando IRP_MN_KERNEL_CALL. Disponibile a partire da Windows Vista.
MARK_HANDLE_NOT_TXF_SYSTEM_LOG Questo componente non usa più questo oggetto come file di log TxF. Disponibile a partire da Windows Vista.
MARK_HANDLE_REALTIME Supportato solo dal file system UDFS. Contrassegna il dispositivo per eseguire lo streaming in tempo reale del video. Disponibile a partire da Windows 7.
MARK_HANDLE_NOT_REALTIME Supportato solo dal file system UDFS. Contrassegna il dispositivo per non eseguire più lo streaming in tempo reale del video. Disponibile a partire da Windows 7.
MARK_HANDLE_CLOUD_SYNC Deprecato; non usare questo flag.
MARK_HANDLE_READ_COPY I dati devono essere letti dalla copia di dati specificata. Supportato solo per Spazi di archiviazione volumi ridondanti. Disponibile a partire da Windows 8.
MARK_HANDLE_NOT_READ_COPY I dati non devono più essere letti da una copia specifica. Supportato solo per Spazi di archiviazione volumi ridondanti. Disponibile a partire da Windows 8.
MARK_HANDLE_FILTER_METADATA Riservato solo all'uso interno di Microsoft.
MARK_HANDLE_RETURN_PURGE_FAILURE Quando si esegue il mapping della memoria o l'I/O memorizzata nella cache con operazioni di I/O non memorizzate nella cache e viene eseguita un'I/O non memorizzata nella cache, il sistema tenta di ripulire i mapping di memoria per l'intervallo di I/O non memorizzato nella cache. Se queste eliminamenti hanno esito negativo, in genere il sistema non restituisce l'errore al chiamante che può causare un danneggiamento dello stato. Questo flag indica al sistema di restituire gli errori di eliminazione per l'handle specificato, in modo che l'applicazione possa gestire meglio questa situazione. Disponibile a partire da Windows 8.1.
MARK_HANDLE_DISABLE_FILE_METADATA_OPTIMIZATION Disabilita la funzionalità di compattazione del servizio replica file (FRS) nel file specificato. Disponibile a partire da Windows 10 versione 1507.
MARK_HANDLE_ENABLE_USN_SOURCE_ON_PAGING_IO Indica a NTFS di impostare il valore UsnSourceInfo specificato nelle scritture di paging nel Journal USN. Tradizionalmente questa operazione non è stata eseguita nelle scritture di paging perché non si sapeva quale thread ha apportato le modifiche date. Si tratta di un override. Questa operazione funziona solo se l'oggetto FileObject su cui è in possesso Gestione memoria dispone di questo stato associato. Disponibile a partire da Windows 10 versione 1507.
MARK_HANDLE_SKIP_COHERENCY_SYNC_DISALLOW_WRITES Indica al sistema che le scritture non sono consentite in questo file. Se un utente tenta di aprire il file per l'accesso in scrittura, l'operazione non riesce con STATUS_ACCESS_DENIED. Se viene visualizzata una scrittura, l'operazione non è riuscita con STATUS_MARKED_TO_DISALLOW_WRITES. Disponibile a partire da Windows 10 versione 1507.
MARK_HANDLE_ENABLE_CPU_CACHE Riservato solo all'uso interno di Microsoft.
MARK_HANDLE_SUPPRESS_VOLUME_OPEN_FLUSH In genere, durante la prima operazione di lettura/scrittura su un handle di volume (DASD aperto), il file system scarica il volume. Ciò può avere conseguenze sulle prestazioni in determinati scenari. Se questo flag è impostato su un handle di volume, lo scaricamento verrà eliminato al primo I/O. Disponibile a partire da Windows 11.

Commenti

MARK_HANDLE_INFO contiene le informazioni utilizzate per contrassegnare un file o una directory specificata e il relativo record del journal delle modifiche del numero di sequenza di aggiornamento (USN) con i dati sulle modifiche.

Requisiti

Requisito Valore
Client minimo supportato Windows XP
Intestazione ntifs.h

Vedi anche

FSCTL_MARK_HANDLE