Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Urządzenie wielofunkcyjne może zawierać co najmniej dwie urządzenia podrzędne audio. Na przykład sterownik adaptera może pozwalać, aby ośmiokanałowe urządzenie audio było widoczne dla systemu jako cztery kanały stereo. Podczas pisania sterownika adaptera, aby uwidocznić wiele urządzeń podrzędnych w ten sposób, należy dołączyć informacje o urządzeniach podrzędnych do sekwencji uruchamiania sterownika i pliku INF.
Najpierw sterownik adaptera powinien udostępnić każde suburządzenie stereo jako oddzielne wystąpienie pary sterownika portu/miniportu podczas procesu uruchamiania. Kilka przykładowych adapterów w zestawie Microsoft Windows Driver Kit (WDK) implementuje funkcję InstallSubdevice, która tworzy i rejestruje podurządzenie składające się z sterownika portu systemowego, sterownika miniportu i zestawu zasobów powiązanych z tą parą. Podczas uruchamiania sterownik powinien wywoływać swoją InstallSubdevice funkcję raz dla każdego urządzenia podrzędnego stereo i określić unikatową nazwę dla każdej pary sterowników port/miniport.
Ponadto unikatowa nazwa przypisana do tej pary musi być zgodna z ciągiem KSNAME określonym w pliku INF sterownika. Na przykład sterownik może przypisać nazwy "Wave1" i "Wave2" do dwóch urządzeń podrzędnych podczas uruchamiania, jak pokazano poniżej:
InstallSubdevice(..., "Wave1",...);
InstallSubdevice(..., "Wave2",...);
W takim przypadku te same nazwy powinny być wyświetlane w pliku INF:
KSNAME_Wave1="Wave1"
KSNAME_Wave2="Wave2"
Plik INF powinien dodać interfejsy zawierające następujące nazwy:
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave1%,Test.Interface.Wave1
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave2%,Test.Interface.Wave2
Plik INF powinien utworzyć sekcje AddReg (zobacz dyrektywę INF AddReg), aby dodać informacje o tych interfejsach do rejestru:
[Test.Interface.Wave1]
AddReg=Test.I.Wave1.AddReg
[Test.Interface.Wave2]
AddReg=Test.I.Wave2.AddReg
Sekcje AddReg powinny również określać wpisy rejestru dla każdego podurządzenia:
[Test.I.Wave1.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%Test.Wave1.szName%
[Test.I.Wave2.AddReg]
HKR,,CLSID,,%Proxy.CLSID%
HKR,,FriendlyName,,%Test.Wave2.szName%
Na koniec plik INF powinien definiować przyjazne nazwy dla tych urządzeń podrzędnych:
Test.Wave1.szName="Punch"
Test.Wave2.szName="Judy"
Przyjazne nazwy są wyświetlane w panelu sterowania audio w celu zidentyfikowania urządzeń podrzędnych.