Metode IMMNotificationClient::OnDefaultDeviceChanged (mmdeviceapi.h)

Metode OnDefaultDeviceChanged memberi tahu klien bahwa perangkat titik akhir audio default untuk peran perangkat tertentu telah berubah.

Sintaks

HRESULT OnDefaultDeviceChanged(
  [in] EDataFlow flow,
  [in] ERole     role,
  [in] LPCWSTR   pwstrDefaultDeviceId
);

Parameter

[in] flow

Arah aliran data perangkat titik akhir. Parameter ini diatur ke salah satu nilai enumerasi EDataFlow berikut:

eRender

eCapture

Arah aliran data untuk perangkat penyajian adalah eRender. Arah aliran data untuk perangkat tangkapan adalah eCapture.

[in] role

Peran perangkat dari perangkat titik akhir audio. Parameter ini diatur ke salah satu nilai enumerasi ERole berikut:

eConsole

eMultimedia

eKomunikasi

[in] pwstrDefaultDeviceId

Penunjuk ke string ID titik akhir yang mengidentifikasi perangkat titik akhir audio. Parameter ini menunjuk ke string karakter lebar yang dihentikan null yang berisi ID titik akhir. String tetap valid selama durasi panggilan. Jika pengguna telah menghapus atau menonaktifkan perangkat default untuk peran tertentu, dan tidak ada perangkat lain yang tersedia untuk mengasumsikan peran tersebut, maka pwstrDefaultDevice adalah NULL.

Nilai kembali

Jika metode berhasil, metode akan mengembalikan S_OK. Jika gagal, kode kesalahan akan ditampilkan.

Keterangan

Tiga parameter input menentukan arah aliran data, peran perangkat, dan string ID titik akhir dari perangkat titik akhir audio default baru.

Di Windows Vista, MMDevice API mendukung peran perangkat tetapi program antarmuka pengguna yang disediakan sistem tidak. Antarmuka pengguna di Windows Vista memungkinkan pengguna untuk memilih perangkat audio default untuk penyajian dan perangkat audio default untuk diambil. Ketika pengguna mengubah perangkat penyajian atau penangkapan default, sistem menetapkan ketiga peran perangkat (eConsole, eMultimedia, dan eCommunications) ke perangkat baru. Dengan demikian, ketika pengguna mengubah perangkat penyajian atau pengambilan default, sistem memanggil metode OnDefaultDeviceChanged klien tiga kali—sekali untuk masing-masing dari tiga peran perangkat.

Di versi Windows yang akan datang, antarmuka pengguna mungkin memungkinkan pengguna untuk menetapkan peran individual ke perangkat yang berbeda. Dalam hal ini, jika pengguna mengubah penetapan hanya satu atau dua peran perangkat ke perangkat penyajian atau penangkapan baru, sistem akan memanggil metode OnDefaultDeviceChanged klien hanya sekali atau dua kali (yaitu, satu panggilan per peran yang diubah). Bergantung pada bagaimana metode OnDefaultDeviceChanged merespons perubahan peran, perilaku aplikasi audio yang dikembangkan untuk berjalan di Windows Vista mungkin berubah ketika dijalankan di versi Windows yang akan datang. Untuk informasi selengkapnya, lihat Peran Perangkat di Windows Vista.

Untuk contoh kode yang mengimplementasikan metode OnDefaultDeviceChanged , lihat Peristiwa Perangkat.

Persyaratan

   
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header mmdeviceapi.h

Lihat juga

Antarmuka IMMNotificationClient