Função RxChangeBufferingState (rxprocs.h)
RxChangeBufferingState é chamado para processar uma solicitação de alteração de estado de buffer.
Sintaxe
NTSTATUS RxChangeBufferingState(
PSRV_OPEN SrvOpen,
PVOID Context,
BOOLEAN ComputeNewState
);
Parâmetros
SrvOpen
Um ponteiro para o SRV_OPEN estrutura de dados a ser alterada.
Context
Um ponteiro para o parâmetro de contexto a ser usado pelo retorno de chamada do minidiretório de rede.
ComputeNewState
O valor que indica se o novo estado de buffer deve ser calculado. Quando esse valor é definido como TRUE, o novo estado de buffer é determinado chamando o minidiretório de rede para calcular o novo estado de buffer. Quando esse valor é FALSE, o novo estado de buffer é determinado pelo membro BufferingFlags da estrutura SrvOpen passada.
Retornar valor
RxChangeBufferingState sempre retorna STATUS_SUCCESS se essa rotina foi bem-sucedida ou se ocorreu um erro. Se ocorrer um erro, o estado de buffer será alterado para que nenhum buffer seja habilitado.
Comentários
Se o buffer local estiver desabilitado para este FCB (FCB_STATE_DISABLE_LOCAL_BUFFERING estiver definido no membro da estrutura FcbState do FCB), isso desabilitará o buffer local independentemente do modo aberto no FCB e de todas as opções de buffer padrão. Quando FCB_STATE_DISABLE_LOCAL_BUFFERING for definido, o novo estado de buffer definido por RxChangeBufferingState será desabilitar todo o buffer.
Se ComputeNewState for TRUE, a rotina MRxComputeNewBufferingState exportada pelo minidiretório de rede será chamada para calcular o novo estado de buffer a ser usado.
Se o FCB for adquirido exclusivamente e ComputeNewState for FALSE. em seguida , RxChangeBufferingState definirá as seguintes opções de estado de buffer:
- FCB_STATE_WRITECACHING_ENABLED
- FCB_STATE_FILESIZECACHEING_ENABLED
- FCB_STATE_FILETIMECACHEING_ENABLED
- FCB_STATE_WRITEBUFFERING_ENABLED
- FCB_STATE_LOCK_BUFFERING_ENABLED
- FCB_STATE_READBUFFERING_ENABLED
- FCB_STATE_READCACHING_ENABLED
- ShareAccess.SharedRead
- ShareAccess.SharedWrite
- ShareAccess.SharedDelete
- FCB_STATE_WRITEBUFFERING_ENABLED
- FCB_STATE_READBUFFERING_ENABLED
- FCB_STATE_OPENSHARING_ENABLED
- FCB_STATE_COLLAPSING_ENABLED
- FCB_STATE_FILESIZECACHEING_ENABLED
- FCB_STATE_FILETIMECACHEING_ENABLED
Ao sair de RxChangeBufferingState, não há nenhuma alteração na propriedade do recurso.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | rxprocs.h (inclua Rxprocs.h, Struchdr.h, Fcb.h) |
IRQL | <= APC_LEVEL |
Confira também
RxIndicateChangeOfBufferingState