Função de retorno de chamada PFNKSDEVICEPNPSTART (ks.h)
Uma rotina AVStrMiniDeviceStart de um minidriver AVStream é chamada quando uma solicitação de IRP_MN_START_DEVICE é enviada para um dispositivo especificado.
Sintaxe
PFNKSDEVICEPNPSTART Pfnksdevicepnpstart;
NTSTATUS Pfnksdevicepnpstart(
[in] PKSDEVICE Device,
[in] PIRP Irp,
[in, optional] PCM_RESOURCE_LIST TranslatedResourceList,
[in, optional] PCM_RESOURCE_LIST UntranslatedResourceList
)
{...}
Parâmetros
[in] Device
Ponteiro para uma estrutura KSDEVICE que descreve o dispositivo a ser iniciado.
[in] Irp
Ponteiro para o IRP_MN_START_DEVICE que foi recebido.
[in, optional] TranslatedResourceList
Ponteiro para uma estrutura de CM_RESOURCE_LIST que contém a lista de recursos traduzidos extraída do Irp. É igual a NULL se o dispositivo não tiver recursos atribuídos. Opcional.
[in, optional] UntranslatedResourceList
Ponteiro para uma estrutura CM_RESOURCE_LIST que contém a lista de recursos não traduzidos extraída do Irp. É igual a NULL se o membro KSDEVICE dessa lista de parâmetros não tiver recursos atribuídos. Opcional.
Retornar valor
Deve retornar STATUS_SUCCESS ou o código de erro retornado da tentativa de executar a operação. A inicialização terá êxito se a rotina retornar um código de status bem-sucedido. NÃO retorne STATUS_PENDING.
Comentários
Especifique o endereço dessa rotina no membro Iniciar de sua estrutura de KSDEVICE_DISPATCH .
Normalmente, essa rotina é usada por minidrivers que devem avaliar os recursos atribuídos. As listas de recursos são extraídas do Irp para a conveniência do minidriver. Um minidriver pode analisar a lista de recursos para localizar a interrupção atribuída ao dispositivo, bem como o endereço físico dos recursos de memória.
Os minidrivers podem usar essa rotina para alocar informações de contexto para associar ao dispositivo AVStream. (Isso é semelhante a um minidriver em classe de fluxo usando a extensão do dispositivo para armazenar informações de contexto.)
Observe que STATUS_PENDING não é um código de retorno legal dessa função. Para executar ações no contexto de um thread de trabalho antes que o AVStream conclua as ações de início, como habilitar interfaces de dispositivo, use uma expedição pós-início. Consulte AVStrMiniDevicePostStart.
Essa rotina é opcional.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Microsoft Windows XP e em sistemas operacionais posteriores e no DirectX 8.0 e versões posteriores do DirectX. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | ks.h (inclua Ks.h) |