PKEY_AudioDevice_NeverSetAsDefaultEndpoint
Puede decidir configurar determinados dispositivos para que nunca se puedan seleccionar como dispositivos predeterminados. Estos incluyen, por ejemplo, líneas de módem y dispositivos de audio médicos. Windows 7 y versiones posteriores de Windows proporcionan la clave del Registro PKEY_AudioDevice_NeverSetAsDefaultEndpoint para que pueda evitar la selección del punto de conexión de un dispositivo como punto de conexión predeterminado.
El siguiente extracto de archivo INF muestra cómo usar PKEY_AudioDevice_NeverSetAsDefaultEndpoint para configurar un punto de conexión para que nunca se pueda seleccionar como valor predeterminado.
[Version]
...
Class=MEDIA
ClassGuid={4d36e96c-e325-11ce-bfc1-08002be10318}
...
[USBAudio]
...
[USBAudio.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,"GLOBAL",USBAudio.Interface
...
[USBAudio.Interface]
AddReg=Xyz.AddReg
...
;; AddReg section to setup endpoint so that
;; it cannot be selected as the default endpoint.
[Xyz.AddReg]
HKR,"EP\\n",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_GUID%
HKR,"EP\\n",%PKEY_AudioDevice_NeverSetAsDefaultEndpoint%,0x00010001,NeverSetAsDefaultEndpointMaskValue
...
[Strings]
KSCATEGORY_AUDIO="{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
PKEY_AudioEndpoint_Association="{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},2"
PKEY_AudioDevice_NeverSetAsDefaultEndpoint = "{F3E80BEF-1723-4FF2-BCC4-7F83DC5E46D4},3"
...
En el ejemplo anterior, NeverSetAsDefaultEndpointMaskValue representa un valor de máscara DWORD que es una combinación de marcas de rol de dispositivo y marcas de flujo de datos.
El siguiente fragmento de código de archivo INF muestra cómo se configura un dispositivo de salida no definido (KSNODETYPE_OUTPUT_UNDEFINED) para que su punto de conexión nunca se seleccione como predeterminado, independientemente del rol de dispositivo y la dirección del flujo de datos.
[Version]
...
Class=MEDIA
ClassGuid={4d36e96c-e325-11ce-bfc1-08002be10318}
...
[USBAudio]
...
[USBAudio.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,"GLOBAL",USBAudio.Interface
...
[USBAudio.Interface]
AddReg=MDVAD.EPProperties.AddReg
...
;; AddReg section to setup endpoint so that
;; it cannot be selected as the default endpoint.
[MDVAD.EPProperties.AddReg]
HKR,"EP\\0",%PKEY_AudioEndpoint_Association%,,%KSNODETYPE_OUTPUT_UNDEFINED%
HKR,"EP\\0",%PKEY_AudioDevice_NeverSetAsDefaultEndpoint%,0x00010001,0x00000305
...
[Strings]
KSCATEGORY_AUDIO="{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSNODETYPE_OUTPUT_UNDEFINED="{DFF21CE0-F70F-11D0-B917-00A0C9223196}"
PKEY_AudioEndpoint_Association="{1DA5D803-D492-4EDD-8C23-E0C0FFEE7F0E},2"
PKEY_AudioDevice_NeverSetAsDefaultEndpoint = "{F3E80BEF-1723-4FF2-BCC4-7F83DC5E46D4},3"
En el ejemplo anterior, 0x00000305 es la combinación OR bit a bit de todas las marcas y máscaras disponibles para PKEY_AudioDevice_NeverSetAsDefaultEndpoint. En la tabla siguiente se muestran las marcas y máscaras y sus valores.
Marca o máscara de punto de conexión | Value |
---|---|
FLOW_MASK_CAPTURE |
0x00000200 |
FLOW_MASK_RENDER |
0x00000100 |
ROLE_MASK_COMMUNICATION |
0x00000004 |
ROLE_MASK_CONSOLE |
0x00000001 |