Routine MRxSetFileInfoAtCleanup

La routine MRxSetFileInfoAtCleanup viene chiamata da RDBSS per richiedere che un mini-redirector di rete imposti le informazioni sui file su un oggetto file system in fase di pulizia.

Sintassi

PMRX_CALLDOWN MRxSetFileInfoAtCleanup;

NTSTATUS MRxSetFileInfoAtCleanup(
  _Inout_ PRX_CONTEXT RxContext
)
{ ... }

Parametri

RxContext [in, out]
Puntatore alla struttura RX_CONTEXT. Questo parametro contiene l'IRP che richiede l'operazione.

Valore restituito

MRxSetFileInfoAtCleanup restituisce STATUS_SUCCESS in caso di esito positivo o di un valore NTSTATUS appropriato.

Commenti

RDBSS genera una chiamata a MRxSetFileInfoAtCleanup durante la pulizia, quando l'ultimo handle di un oggetto file viene chiuso. Questa operazione è diversa dall'operazione di chiusura che viene richiamata quando viene eliminato l'ultimo riferimento a un oggetto file.

MRxSetFileInfoAtCleanup viene chiamato da RDBSS se i timestamp in un file o le dimensioni di un file sono stati modificati. Le chiamate a MRxSetFileInfoAtCleanup da RDBSS vengono effettuate separatamente per ognuna di queste modifiche. Se le dimensioni del file e i timestamp sono stati modificati, RDBSS effettua due chiamate a MRxSetFileInfoAtCleanup.

Prima di chiamare MRxSetFileInfoAtCleanup, RDBSS modifica i membri seguenti nella struttura RX_CONTEXT a cui punta il parametro RxContext se i timestamp in un file sono stati modificati:

Il membro Info.FileInformationClass è impostato su un valore FILE_INFORMATION_CLASS di FileBasicInformation.

Il membro Info.Buffer è impostato su una struttura FILE_BASIC_INFORMATION allocata nello stack.

Il membro Info.Length è impostato sulla dimensione di una struttura FILE_BASIC_INFORMATION.

Prima di chiamare MRxSetFileInfoAtCleanup, RDBSS modifica i membri seguenti nella struttura RX_CONTEXT a cui punta il parametro RxContext se le dimensioni di un file sono state modificate:

Il membro Info.FileInformationClass è impostato su un valore FILE_INFORMATION_CLASS di FileEndOfFileInformation.

Il membro Info.Buffer è impostato su una struttura FILE_END_OF_FILE_INFORMATION allocata nello stack.

Il membro Info.Length è impostato su sizeof(FILE_END_OF_FILE_INFORMATION).

RDBSS ignora il valore restituito da MRxSetFileInfoAtCleanup.

Un mini-redirector di rete può scegliere di non eseguire alcuna operazione in questa routine e restituire STATUS_SUCCESS. Tutte le modifiche apportate alle dimensioni o ai timestamp del file verranno gestite durante l'operazione di pulizia.

Requisiti

Piattaforma di destinazione

Desktop

Intestazione

Mrx.h (include Mrx.h)

Vedi anche

MRxIsValidDirectory

MRxQueryDirectory

MRxQueryEaInfo

MRxQueryFileInfo

MRxQueryQuotaInfo

MRxQuerySdInfo

MRxQueryVolumeInfo

MRxSetEaInfo

MRxSetFileInfo

MRxSetQuotaInfo

MRxSetSdInfo

MRxSetVolumeInfo