Freigeben über


PKEY_AudioDevice_NeverSetAsDefaultEndpoint

Sie können sich entscheiden, bestimmte Geräte so einzurichten, dass sie niemals 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, um die Auswahl des Endpunkts eines Geräts als Standardendpunkt zu verhindern.

Von Bedeutung

Wenn Sie PKEY_AudioDevice_NeverSetAsDefaultEndpoint festlegen, müssen Sie auch PKEY_AudioEndpoint_Association im selben EP\\ Unterschlüssel festlegen. Der AudioEndpointBuilder-Dienst verwendet den Association-Wert, um der Endpunkteigenschaft mit dem richtigen Endpunkt auf dem Gerät übereinzugleichen. Wenn die Zuordnung nicht festgelegt ist, wird die PKEY_AudioDevice_NeverSetAsDefaultEndpoint-Eigenschaft nicht angewendet.

Hinweis

Wenn Sie diese Eigenschaft festlegen, wird verhindert, dass der Endpunkt als Standardendpunkt sowohl vom Automatischen Standardgeräteauswahlalgorithmus als auch vom Benutzer über die Benutzeroberfläche der Soundeinstellungen ausgewählt wird. Der Benutzer kann den Endpunkt nicht manuell als Standardgerät oder als Standardkommunikationsgerät für die Rollen und Flüsse festlegen, die in der Maske angegeben sind.

Der folgende INF-Dateiauszug zeigt, wie sie PKEY_AudioDevice_NeverSetAsDefaultEndpoint zum Einrichten eines Endpunkts verwenden, sodass 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äterollenkennzeichnungen und Datenflusskennzeichnungen ist.

KSNODETYPE_GUID ist der Wert für PKEY_AudioEndpoint_Association , der bestimmt, für welche Endpunkte die Eigenschaft gilt. Sie können eine der folgenden Optionen angeben:

  • Eine bestimmte PIN-Kategorie-GUID , z. B. KSNODETYPE_OUTPUT_UNDEFINED oder KSNODETYPE_SPEAKER, um nur Endpunkte abzuzielen, deren Pinkategorie dieser GUID entspricht.
  • KSNODETYPE_ANY ({00000000-0000-0000-0000-000000000000}), eine NULL-GUID, die als Wildcard fungiert und allen Endpunkten auf dem Gerät entspricht, unabhängig von ihrer Pinkategorie.

Der folgende INF-Dateiausschnitt zeigt, wie ein Gerät so eingerichtet ist, dass sein Endpunkt niemals als Standard ausgewählt wird, unabhängig von der Geräterolle und der Datenflussrichtung. In diesem Beispiel wird KSNODETYPE_ANY verwendet, um die Eigenschaft auf alle Endpunkte anzuwenden.

[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_ANY%
HKR,"EP\\0",%PKEY_AudioDevice_NeverSetAsDefaultEndpoint%,0x00010001,0x00000307
...

[Strings]
KSCATEGORY_AUDIO="{6994AD04-93EF-11D0-A3CC-00A0C9223196}"
KSNODETYPE_ANY="{00000000-0000-0000-0000-000000000000}"
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 Kennzeichen und Masken, die für PKEY_AudioDevice_NeverSetAsDefaultEndpoint verfügbar sind. In der folgenden Tabelle sind die Flags und Masken und deren Werte aufgeführt.

Kennzeichnungs- oder Endpunktmaske Wert

FLOW_MASK_CAPTURE

0x00000200

FLOW_MASK_RENDER

0x00000100

ROLE_MASK_COMMUNICATION

0x00000004

ROLE_MASK_CONSOLE

0x00000001