Função NdisMCmCreateVc (ndis.h)
NdisMCmCreateVc configura um ponto de extremidade de conexão no qual um driver MCM pode expedir uma oferta de chamada de entrada para um cliente.
Sintaxe
NDIS_STATUS NdisMCmCreateVc(
[in] NDIS_HANDLE MiniportAdapterHandle,
[in] NDIS_HANDLE NdisAfHandle,
[in] NDIS_HANDLE MiniportVcContext,
[out] PNDIS_HANDLE NdisVcHandle
);
Parâmetros
[in] MiniportAdapterHandle
Especifica a entrada original do identificador fornecido pelo NDIS para MiniportInitializeEx.
[in] NdisAfHandle
Especifica o identificador que identifica o cliente que é o destino de uma chamada de entrada. O driver MCM obteve esse identificador como um parâmetro de entrada para sua função ProtocolCmOpenAf.
[in] MiniportVcContext
Especifica o identificador para uma área de contexto residente fornecida pelo chamador na qual o driver MCM mantém o estado para essa VC. O NDIS passa esse identificador de volta para o driver MCM em todas as chamadas subsequentes relacionadas a essa VC se a chamada para NdisMCmCreateVc for bem-sucedida.
[out] NdisVcHandle
Ponteiro para uma variável fornecida pelo chamador que deve ser inicializada para NULL antes que NdisMCmCreateVc seja chamado. Ao retornar de uma chamada bem-sucedida, essa variável foi definida como um identificador fornecido pelo NDIS para a VC recém-criada. O chamador deve salvar esse identificador para chamadas subsequentes para funções de NdisXxx relacionadas a essa VC.
Valor de retorno
NdisMCmCreateVc pode retornar um dos seguintes:
Observações
Um driver MCM cria um VC com NdisMCmCreateVc para representar uma oferta de entrada de uma conexão de um nó remoto direcionado a um SAP que já foi registrado com o driver MCM.
No processo de criação de VC, o NDIS fornece um NdisVcHandle ao cliente e ao driver MCM. Esse identificador identifica a conexão virtual para o cliente e o driver de miniporto para o qual as solicitações subsequentes relativas à VC fornecida são direcionadas. Cada driver deve tratar esse identificador vc como uma variável opaca, passando-o sem modificação e não interpretado em chamadas subsequentes para determinadas funções de biblioteca NDIS orientadas à conexão.
Normalmente, os chamadores de NdisMCmCreateVc armazenam o NdisVcHandle retornado na área de estado alocada pelo chamador em MiniportVcContext . O NDIS passa um NdisVcHandle como um parâmetro de entrada para a função ProtocolCoCreateVc do cliente apropriado sempre que um driver MCM cria uma VC.
Quando um driver MCM processa a oferta de uma chamada de entrada direcionada a um de seus SAPs registrados, ele deve chamar NdisMCmCreateVc primeiro. Como uma operação síncrona, o NDIS chama a função ProtocolCoCreateVc do cliente antes que NdisMCmCreateVc retorne o controle. Se sua chamada para NdisMCmCreateVc for bem-sucedida, o driver MCM poderá continuar notificando o cliente apropriado, passando o valor retornado em NdisVcHandle para NdisMCmDispatchIncomingCall.
O gravador de driver determina se um driver MCM tem uma função MiniportCoCreateVc que o driver chama no contexto de configuração de conexões para chamadas de saída e de entrada.
Somente os drivers de miniporto orientados à conexão que fornecem suporte integrado ao gerenciamento de chamadas podem chamar NdisMCmCreateVc. Os clientes e gerentes de chamadas autônomos, que se registram no NDIS como drivers de protocolo, chamam NdisCoCreateVc.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Com suporte para drivers NDIS 6.0 e NDIS 5.1 (consulte NdisMCmCreateVc (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte NdisMCmCreateVc (NDIS 5.1)) no Windows XP. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | ndis.h (inclua Ndis.h) |
biblioteca | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
regras de conformidade de DDI | Irql_MCM_Function(ndis) |