FC2ブログ
D_DevLog
Delphiに関することを書いてみたりするかもしれない、いわゆるチラシの裏
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Windows Vistaでマスターボリュームを変更する
Windows Vistaではミキサーがプロセス毎に制御出来る要になったのに伴い、以前のAudio Mixer APIではマスターボリューム値の設定/取得ができなくなりました。

代わりにVistaではCore Audio APIを使用します。
DelphiからCore Audio APIを使用するには、SDKのendpointvolume.h/mmdeviceapi.hをコンバートするか、タイプライブラリの取り込む必要があります。
後者の場合はVistaに開発環境がインストールされている必要があるので、今回はヘッダから必要な部分を手動でコンバートしました。


サンプルコード
(拡張子をzipに変更してください)

なお再生デバイスではなく、録音デバイスを制御する場合はIMMDeviceEnumerator.GetDefaultAudioEndpointでeRenderではなくeCaptureを指定します。
スポンサーサイト
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。