Compartilhar via


Informações de versão do ACX

Este tópico discute as informações de versão do ACX e do KMDF. Para obter uma visão geral do ACX, consulte Visão geral das extensões de classe de áudio ACX.

Versões ACX e KMDF

Use the !wdfkd.wdfldr extension to view version information for ACX. A extensão !wdfkd.wdfldr exibe informações sobre os drivers que estão vinculados dinamicamente às Estruturas de Driver do Windows.

!wdfkd.wdfldr Acx01000.sys

Version 1.1

The current version of ACX is 1.1 and is recommended for all new driver development.

O suporte do sistema operacional Windows para versões ACX é descrito na tabela a seguir.

Operating system KMDF version Versão do ACX com suporte Version notes
Windows 10, versão 2004 Minimum 1.31 1.1 Versão pública inicial.

Esses DDIs foram adicionados na versão 1.1.

  • AcxCircuitGetElementsCount
  • AcxCircuitGetPinsCount
  • AcxCircuitGetSymbolicLinkName
  • AcxCircuitGetNotificationId
  • AcxFactoryCircuitGetSymbolicLinkName
  • AcxDataFormatListRemoveDataFormats
  • AcxPinRemoveModeDataFormatList
  • AcxStreamGetElementsCount
  • AcxStreamGetNotificationId
  • AcxTargetCircuitGetSymbolicLinkName
  • AcxTargetPinFlushModeDataFormatListCache

Versão de pré-lançamento 1.0

A versão 1.0 não é recomendada para o desenvolvimento de novos driveres, mas foi usada no desenvolvimento e teste antecipados de drivers ACX.

Operating system KMDF version Versão do ACX com suporte Version notes
Windows 10, versão 1903 1.29 1.0 Pre-release.

Informações de versão do KMDF

Objetos ACX são objetos WDF (Windows Driver Framework) – WDFOBJECT. Para obter mais informações sobre o WDF, consulte Introdução aos objetos framework. O ACX associa-se a uma versão específica do KMDF em runtime. Para obter mais informações, consulte o histórico de versão do KMDF.

Para obter informações sobre como instalar diferentes versões do WDF/KMDF, consulte os seguintes tópicos:

O ACX Associa a uma versão específica do KMDF em runtime. Quando o Windows carrega um driver WDF no modo kernel, o driver é associado dinamicamente à biblioteca de tempo de execução kmdf (WdfMM000.sys). Vários drivers podem compartilhar a mesma imagem de DLL (biblioteca em tempo de execução) e as bibliotecas em tempo de execução para duas versões principais podem coexistir lado a lado. Para obter informações sobre o controle de versão kmdf, consulte o Controle de Versão da Biblioteca de Estruturas.

Suporte a várias versões do ACX

Ao criar o driver de áudio, especifique a versão máxima e mínima da estrutura ACX que deseja usar no momento da compilação. Assim, o driver de áudio em tempo de execução pode assumir que a versão máxima/mínima da DDI está disponível, caso contrário, o driver de áudio não é carregado.

Os drivers ACX podem ser gravados para serem executados em várias versões do ACX e, em tempo de execução, fazer a chamada se uma DDI ACX específica, estrutura etc. estiver presente ou não nessa versão. ACX_IS_FUNCTION_AVAILABLE(FunctionName) can be used to see if a specific function in available in a specific version of ACX. For more information, see ACX_IS_FUNCTION_AVAILABLE macro.

O código a seguir fornece um exemplo de como verificar se uma função está disponível.

    if (ACX_IS_FUNCTION_AVAILABLE( AcxTargetPinFlushModeDataFormatListCache)) {
        DbgPrint("Available:  AcxTargetPinFlushModeDataFormatListCache\n");
    }
    else
    {
        DbgPrint("Not available:  AcxTargetPinFlushModeDataFormatListCache\n");
        ASSERT(FALSE);
    }

Também estão disponíveis essas funções semelhantes.

ACX_IS_STRUCTURE_AVAILABLE(StructName) described in ACX_IS_STRUCTURE_AVAILABLE macro.

ACX_IS_FIELD_AVAILABLE(StructName, FieldName) described in ACX_IS_FIELD_AVAILABLE macro.

ACX also supports the ACX_DRIVER_VERSION_AVAILABLE_PARAMS_INIT function which can be used to check version information of the audio driver as shown in the following code sample.

    ACX_DRIVER_VERSION_AVAILABLE_PARAMS_INIT(&ver, 1, 1);
    if (!AcxDriverIsVersionAvailable(driver, &ver))
    {
        ASSERT(FALSE);
        goto exit;
    } 

See also

ACX_IS_FUNCTION_AVAILABLE macro

Visão geral de extensões de classe de áudio ACX

Documentação de referência da ACX