Share via


Função acmDriverPriority (msacm.h)

A função acmDriverPriority modifica a prioridade e o estado de um driver ACM.

Sintaxe

MMRESULT ACMAPI acmDriverPriority(
  HACMDRIVERID hadid,
  DWORD        dwPriority,
  DWORD        fdwPriority
);

Parâmetros

hadid

Identificador para o identificador de driver de um driver do ACM instalado. Se os sinalizadores ACM_DRIVERPRIORITYF_BEGIN e ACM_DRIVERPRIORITYF_END forem especificados, esse parâmetro deverá ser NULL.

dwPriority

Nova prioridade para um identificador de driver ACM global. Um valor zero especifica que a prioridade do identificador de driver deve permanecer inalterada. Um valor 1 especifica que o driver deve ser colocado como o driver de prioridade de pesquisa mais alto. Um valor –1 especifica que o driver deve ser colocado como o driver de prioridade de pesquisa mais baixo. As prioridades são usadas apenas para drivers globais.

fdwPriority

Sinalizadores para definir prioridades de drivers do ACM. Os valores a seguir são definidos.

Valor Significado
ACM_DRIVERPRIORITYF_BEGIN As transmissões de notificação de alteração devem ser adiadas. Um aplicativo deve reabilitar as transmissões de notificação assim que possível com o sinalizador ACM_DRIVERPRIORITYF_END. Observe que hadid deve ser NULL, dwPriority deve ser zero e apenas o sinalizador ACM_DRIVERPRIORITYF_BEGIN pode ser definido.
ACM_DRIVERPRIORITYF_DISABLE O driver do ACM deverá ser desabilitado se ele estiver habilitado no momento. Desabilitar um driver desabilitado não faz nada.
ACM_DRIVERPRIORITYF_ENABLE O driver do ACM deverá ser habilitado se ele estiver desabilitado no momento. Habilitar um driver habilitado não faz nada.
ACM_DRIVERPRIORITYF_END A tarefa de chamada deseja reabilitar as transmissões de notificação de alteração. Um aplicativo deve chamar acmDriverPriority com ACM_DRIVERPRIORITYF_END para cada chamada bem-sucedida com o sinalizador ACM_DRIVERPRIORITYF_BEGIN. Observe que hadid deve ser NULL, dwPriority deve ser zero e apenas o sinalizador ACM_DRIVERPRIORITYF_END pode ser definido.

Retornar valor

Retornará zero se tiver êxito ou um erro, caso contrário. Os valores de erro possíveis incluem o seguinte.

Código de retorno Descrição
MMSYSERR_ALLOCATED
O bloqueio de difusão adiado pertence a uma tarefa diferente.
MMSYSERR_INVALFLAG
Pelo menos um sinalizador é inválido.
MMSYSERR_INVALHANDLE
O identificador especificado é inválido.
MMSYSERR_INVALPARAM
Pelo menos um parâmetro é inválido.
MMSYSERR_NOTSUPPORTED
Não há suporte para a operação solicitada para o driver especificado. Por exemplo, identificadores de driver locais e de notificação não dão suporte a prioridades (mas podem ser habilitados e desabilitados). Se um aplicativo especificar um valor diferente de zero para dwPriority para identificadores de driver locais e notificar, esse erro será retornado.

Comentários

Todos os identificadores de driver podem ser habilitados e desabilitados, incluindo identificadores globais, locais e de driver de notificação.

Se mais de um identificador de driver global precisar ser habilitado, desabilitado ou deslocado na prioridade, um aplicativo deverá adiar as transmissões de notificação de alteração usando o sinalizador ACM_DRIVERPRIORITYF_BEGIN. Uma única notificação de alteração será transmitida quando o sinalizador ACM_DRIVERPRIORITYF_END for especificado.

Um aplicativo pode usar a função com o índice de métrica acmMetrics ACM_METRIC_DRIVER_PRIORITY para recuperar a prioridade atual de um driver global. Os drivers são sempre enumerados da prioridade mais alta para a mais baixa pela função acmDriverEnum .

Todos os identificadores de driver habilitados receberão notificações de alteração. Um aplicativo pode registrar uma mensagem de notificação usando a função acmDriverAdd em conjunto com o sinalizador ACM_DRIVERADDF_NOTIFYHWND. As alterações nos identificadores de driver não globais não serão transmitidas.

As prioridades são simplesmente usadas para a ordem de pesquisa quando um aplicativo não especifica um driver. Aumentar a prioridade de um driver não terá efeito sobre o desempenho de um driver.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho msacm.h
Biblioteca Msacm32.lib
DLL Msacm32.dll

Confira também

Funções de compactação de áudio

Gerenciador de Compactação de Áudio