Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
[Funkcja skojarzona z tą stroną, Waveform Audio, jest starszą funkcją. Został zastąpiony przez WASAPI i Audio Graphs. WASAPI i grafy audio zostały zoptymalizowane pod kątem Windows 10 i Windows 11. Firma Microsoft zdecydowanie zaleca, aby nowy kod używał WASAPI i Audio Graphs zamiast Waveform Audio, jeśli to możliwe. Firma Microsoft sugeruje, że istniejący kod, który używa starszych interfejsów API, należy przepisać go do korzystania z nowych interfejsów API, jeśli to możliwe.]
W poniższym przykładzie pokazano, jak przetworzyć komunikat MM_WOM_DONE. W tym przykładzie założono, że aplikacja nie odtwarza wielu bloków danych, więc może zamknąć urządzenie wyjściowe po odtworzeniu pojedynczego bloku danych.
// 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);
}