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 |
---|---|
|
O bloqueio de difusão adiado pertence a uma tarefa diferente. |
|
Pelo menos um sinalizador é inválido. |
|
O identificador especificado é inválido. |
|
Pelo menos um parâmetro é inválido. |
|
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 |