Verarbeiten der MM_WOM_DONE Nachricht
Im folgenden Beispiel wird gezeigt, wie die MM_WOM_DONE Nachricht verarbeitet wird. In diesem Beispiel wird davon ausgegangen, dass die Anwendung nicht mehrere Datenblöcke wiedergibt, sodass sie das Ausgabegerät nach der Wiedergabe eines einzelnen Datenblocks schließen kann.
// 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);
}