PKEY_AudioDevice_NeverSetAsDefaultEndpoint

Sie können sich entscheiden, bestimmte Geräte so einzurichten, dass sie nie als Standardgeräte ausgewählt werden können. Dazu gehören beispielsweise Modemleitungen und medizinische Audiogeräte. Windows 7 und höhere Versionen von Windows stellen den PKEY_AudioDevice_NeverSetAsDefaultEndpoint Registrierungsschlüssel bereit, damit Sie die Auswahl des Endpunkts eines Geräts als Standardendpunkt verhindern können.

Der folgende INF-Dateiauszug zeigt, wie Sie PKEY_AudioDevice_NeverSetAsDefaultEndpoint verwenden, um einen Endpunkt so einzurichten, dass er nie als Standard ausgewählt werden kann.

[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"
...

Im vorherigen Beispiel stellt NeverSetAsDefaultEndpointMaskValue einen DWORD-Maskenwert dar, der eine Kombination aus Geräterollenflags und Datenflussflags ist.

Der folgende INF-Dateiausschnitt zeigt, wie ein nicht definiertes Ausgabegerät (KSNODETYPE_OUTPUT_UNDEFINED) so eingerichtet ist, dass sein Endpunkt nie als Standard ausgewählt wird, unabhängig von der Geräterolle und der Datenflussrichtung.

[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"

Im vorherigen Beispiel ist 0x00000305 die bitweise OR-Kombination aller für PKEY_AudioDevice_NeverSetAsDefaultEndpoint verfügbaren Flags und Masken. Die folgende Tabelle zeigt die Flags und Masken und ihre Werte.

Flag oder Endpunktmaske Wert

FLOW_MASK_CAPTURE

0x00000200

FLOW_MASK_RENDER

0x00000100

ROLE_MASK_COMMUNICATION

0x00000004

ROLE_MASK_CONSOLE

0x00000001