Windows Mobile 6 で SndPlayAsync を使用して再生されるサウンドの音量をどのように制御できますか??
誰も知らないようです!ドキュメントにはそれに関して何も言及されていません...だから仕方がないか、極秘にされています...
さらに、Windows Media Player を使用できる可能性があることは承知していますが、できれば使用したくありません。
助けてくれてありがとう!
アビブ。
Windows Mobile 6 で SndPlayAsync を使用して再生されるサウンドの音量をどのように制御できますか??
誰も知らないようです!ドキュメントにはそれに関して何も言及されていません...だから仕方がないか、極秘にされています...
さらに、Windows Media Player を使用できる可能性があることは承知していますが、できれば使用したくありません。
助けてくれてありがとう!
アビブ。
私の提案は次のとおりです。
[DllImport("coredll.dll", SetLastError = true)]
protected static extern int waveOutSetVolume(IntPtr device, uint volume);
[DllImport("coredll.dll", SetLastError = true)]
internal static extern int waveOutGetVolume(IntPtr device, ref int volume);
そして、メソッドを呼び出すことができます:
int before;
uint maxVol = uint.MaxValue;
waveOutGetVolume(IntPtr.Zero, ref before);
waveOutSetVolume(IntPtr.Zero, maxVol);
//Do some playing
waveOutSetVolume(IntPtr.Zero, before);
他の値についてはデバッグできます。これにより、最高に設定されます。
それが役に立てば幸い?
mixer...
マスターボリュームを設定するには、API 関数を使用する必要があります。コードサンプルは次のとおりです。
http://www.csharp-home.com/index/tiki-read_article.php?articleId=134
このコードを Windows Mobile アプリケーションで使用するには、「winmm.dll」を「coredll.dll」に変更する必要があります。また、これらの方法は Windows Mobile ではサポートされていない可能性がありますが、サポートされていることは確かです。