Вопрос по Mci

Тема в разделе "Borland C++ Builder & Kylix", создана пользователем mibin, 29 янв 2009.

  1. mibin

    mibin Well-Known Member

    Регистрация:
    29 янв 2009
    Сообщения:
    48
    Симпатии:
    0
    Только начал изучать MCI и практически сразу появилось несколько вопросов...
    Для изучения MCI пользуюсь книгой "Обработка звука на PC" автор Н. Секунов

    Для вывода звука использовал этот пример:

    //---------------------------------------------------------------------------------------

    DWORD playWAVEFile(HWND hWndNotify, LPCWSTR lpszWAVEFileName)
    {
    UINT wDeviceID;
    DWORD dwReturn;
    MCI_OPEN_PARMS mciOpenParms;
    MCI_PLAY_PARMS mciPlayParms;

    // Open the device by specifying the device and filename.
    // MCI will choose a device capable of playing the specified file.

    mciOpenParms.lpstrDeviceType = L"waveaudio";
    mciOpenParms.lpstrElementName = lpszWAVEFileName;
    if (dwReturn = mciSendCommand(0, MCI_OPEN,
    MCI_OPEN_TYPE | MCI_OPEN_ELEMENT,
    (DWORD)(LPVOID) &mciOpenParms))
    {
    // Failed to open device. Don't close it; just return error.
    ShowError(dwResult);
    }

    // The device opened successfully; get the device ID.
    wDeviceID = mciOpenParms.wDeviceID;

    // Begin playback. The window procedure function for the parent
    // window will be notified with an MM_MCINOTIFY message when
    // playback is complete. At this time, the window procedure closes
    // the device.

    mciPlayParms.dwCallback = (DWORD) hWndNotify;
    if (dwReturn = mciSendCommand(wDeviceID, MCI_PLAY, MCI_NOTIFY,
    (DWORD)(LPVOID) &mciPlayParms))
    {
    ShowError(dwResult);
    }

    return (0L);
    }

    //---------------------------------------------------------------------------------------

    но результатом выполнения программы было выдача ошибки - "Используемое устройство MCI не поддерживает указанную команду".
    Что я делаю не так, объясните, пожалуйста.
    И еще один вопрос. В заголовке функции определена такая переменная - hWndNotify. Мне при вызове функции просто написть вместо нее NULL или ее необходимо как-то найти?

    Все, спасибо, разобрался :) сам дурак оказался :)
     
Загрузка...
Похожие Темы - Вопрос по Mci
  1. ApplePen
    Ответов:
    0
    Просмотров:
    57
  2. gURaBA_N
    Ответов:
    3
    Просмотров:
    91
  3. kartaman
    Ответов:
    0
    Просмотров:
    127
  4. Peter
    Ответов:
    4
    Просмотров:
    519
  5. di0d_
    Ответов:
    1
    Просмотров:
    434

Поделиться этой страницей