MM_WOM_DONE メッセージの処理
次の例は、 MM_WOM_DONE メッセージを処理する方法を示しています。 この例では、アプリケーションが複数のデータ ブロックを再生しないことを前提としているため、1 つのデータ ブロックを再生した後に出力デバイスを閉じることができるようにします。
// WndProc--Main window procedure.
LRESULT FAR PASCAL WndProc(HWND hWnd, UINT msg, WPARAM wParam,
LPARAM lParam)
{
switch (msg)
{
case MM_WOM_DONE:
// A waveform-audio data block has been played and
// can now be freed.
waveOutUnprepareHeader((HWAVEOUT) wParam,
(LPWAVEHDR) lParam, sizeof(WAVEHDR) );
// Free hData memory.
waveOutClose((HWAVEOUT) wParam);
break;
}
return DefWindowProc(hWnd, msg, wParam, lParam);
}