Funzione MmDoesFileHaveUserWritableReferences (ntifs.h)

La funzione MmDoesFileHaveUserWritableReferences restituisce il numero di riferimenti scrivibili per un oggetto file.

Sintassi

ULONG MmDoesFileHaveUserWritableReferences(
  [in] PSECTION_OBJECT_POINTERS SectionPointer
);

Parametri

[in] SectionPointer

Puntatore a una struttura SECTION_OBJECT_POINTERS contenente i puntatori a oggetti sezione dell'oggetto file. Questo parametro è obbligatorio e non può essere NULL.

Valore restituito

MmDoesFileHaveUserWritableReferences restituisce il numero di riferimenti scrivibili per l'oggetto file associato al parametro SectionPointer .

Commenti

MmDoesFileHaveUserWritableReferences restituisce il numero di riferimenti scrivibili per l'oggetto file associato al parametro SectionPointer . Questo valore restituito è la somma dei numeri seguenti:

  • Numero di handle di file scrivibili per l'oggetto file associato.

  • Numero di sezioni scrivibili per l'oggetto file associato.

  • Numero di visualizzazioni scrivibili per l'oggetto file associato.

  • Numero di MDLin sospeso, ovvero aree di mapping per l'oggetto file associato.

Per i file system transazionali, è possibile usare questa funzione per determinare se una determinata transazione fa riferimento a un oggetto file che può cambiare. In tal caso, la transazione deve essere eseguito il rollback perché l'atomicità non può essere garantita.

Prima di chiamare MmDoesFileHaveUserWritableReferences, i file system transazionali devono controllare e intercettare la creazione di oggetti file che specificano l'accesso in scrittura. In particolare, prima di avviare una transazione, i file system transazionali devono assicurarsi che non siano presenti oggetti file scrivibili attualmente presenti per il file specificato nella transazione. Anche se la transazione è in corso, i file system transazionali devono non riuscire le richieste per creare oggetti file con accesso in scrittura per i file transazionali.

Nota

Questa funzione può essere usata per rilevare se sono presenti visualizzazioni scrivibili per un oggetto file anche quando tutti gli handle e le sezioni dei file per l'oggetto file sono stati chiusi.

Per altre informazioni sulle transazioni, vedere Kernel Transaction Manager.

Per altre informazioni sugli oggetti file, vedere FILE_OBJECT.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Piattaforma di destinazione Universale
Intestazione ntifs.h (include Fltkernel.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDDIs(storport)