Condividi tramite


Funzione FltPerformSynchronousIo (fltkernel.h)

Un driver minifilter chiama FltPerformSynchronousIo per avviare un'operazione I/O sincrona dopo aver chiamato FltAllocateCallbackData per allocare una struttura di dati di callback per l'operazione.

Sintassi

VOID FLTAPI FltPerformSynchronousIo(
  [in, out] PFLT_CALLBACK_DATA CallbackData
);

Parametri

[in, out] CallbackData

Puntatore a una struttura di dati di callback (FLT_CALLBACK_DATA) allocata da una chiamata precedente a FltAllocateCallbackData. Questo parametro è obbligatorio e non può essere NULL. Il chiamante è responsabile della liberazione di questa struttura quando non è più necessario chiamando FltFreeCallbackData.

Valore restituito

nessuno

Osservazioni

Un driver minifilter chiama FltPerformSynchronousIo per avviare un'operazione di I/O sincrona.

I driver minifilter possono avviare solo operazioni di I/O basate su IRP. Non possono avviare operazioni di callback di I/O o file system (FSFilter).

FltPerformSynchronousIo invia l'operazione di I/O solo alle istanze del driver minifilter associate sotto l'istanza di avvio (specificata nel parametro Instance a FltAllocateCallbackData) e al file system. I driver minifilter collegati sopra l'istanza specificata non ricevono l'operazione di I/O.

I driver minifilter devono usare FltPerformSynchronousIo solo nei casi in cui le routine come le seguenti non possono essere usate:

FltClose

FltCreateFile

FltQueryInformationFile

FltQueryVolumeInformation

FltReadFile

FltSetInformationFile

FltSetVolumeInformation

FltTagFile

FltUntagFile

FltWriteFile

Dopo aver restituito FltPerformSynchronousIo , il chiamante può ristampare l'operazione di I/O chiamando FltReissueSynchronousIo. In alternativa, il chiamante può liberare la struttura dei dati di callback (FLT_CALLBACK_DATA) chiamando FltFreeCallbackData o preparandolo per essere riutilizzato chiamando FltReuseCallbackData.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione fltkernel.h (includere Fltkernel.h)
Libreria FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Vedi anche

FLT_CALLBACK_DATA

FltAllocateCallbackData

FltClose

FltCreateFile

FltFreeCallbackData

FltPerformAsynchronousIo

FltQueryInformationFile

FltQueryVolumeInformation

FltReadFile

FltReissueSynchronousIo

FltReuseCallbackData

FltSetInformationFile

FltSetVolumeInformation

FltTagFile

FltUntagFile

FltWriteFile