Função RxCreateNetFcb (fcb.h)
RxCreateNetFCB aloca, inicializa e insere uma nova estrutura FCB nas estruturas de dados na memória para um V_NET_ROOT em que este FCB está sendo aberto. A estrutura alocada tem espaço para um SRV_OPEN e uma estrutura FOBX.
Sintaxe
PFCB RxCreateNetFcb(
[in] IN PRX_CONTEXT RxContext,
[in] IN PIRP Irp,
[in] IN PV_NET_ROOT VNetRoot,
[in] IN PUNICODE_STRING Name
);
Parâmetros
[in] RxContext
Um ponteiro para a estrutura RX_CONTEXT que descreve uma operação de criação.
[in] Irp
Um ponteiro para o IRP encapsulado por essa estrutura RX_CONTEXT.
[in] VNetRoot
Um ponteiro para a estrutura V_NET_ROOT na qual esta FCB está sendo aberta.
[in] Name
O nome do FCB. O V_NET_ROOT pode conter um prefixo de nome que deve ser anexado aqui.
Retornar valor
RxCreateNetFCB retorna um ponteiro para uma estrutura de dados FCB recém-alocada com êxito ou um ponteiro NULL em caso de falha.
Comentários
A rotina RxCreateNetFCB normalmente não é chamada por drivers de minidiretório de rede diretamente. O RDBSS chama essa rotina internamente quando um pacote de solicitação de E/S é recebido para IRP_MJ_CREATE e uma estrutura FCB precisa ser criada. Esse IRP normalmente é recebido pelo RDBSS em resposta a um aplicativo no modo de usuário solicitando uma operação de criação de arquivo em um compartilhamento de rede. Também é possível que outro driver de kernel emita esse IRP.
Se o FCB a ser criado for um arquivo de paginação, RxCreateNetFCB alocará memória de pool não paginada ao criar a nova estrutura de dados FCB e definirá o seguinte sinalizador no membro FcbState do FCB:
Se o FCB a ser criado não for um arquivo de paginação, RxCreateNetFCB alocará memória de pool paginada ao criar a nova estrutura de dados FCB.
No momento, o Windows não permite ter um arquivo de paginação em um computador remoto.
Se o membro Create.Flags no RX_CONTEXT tiver o sinalizador RX_CONTEXT_CREATE_FLAG_ADDEDBACKSLASH ativado, o membro FcbState do FCB terá o sinalizador FCB_STATE_ADDEDBACKSLASH ativado.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | fcb.h (include Rxcontx.h, Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |