Операционные системы. Марапулец Ю.В. - 72 стр.

UptoLike

Составители: 

ReportMCIError ( hWnd, dwRet ) ;
return ( FALSE ) ;
}
return( TRUE ); // успешное выполнение
}
Флаг MCI_SET_TIME_FORMAT указывает системе на необходимость
прочитать значение в поле dwTimeFormat структуры mciSetParms.
Воспроизведение звука. Командное сообщение MCI_PLAY
инициирует
воспроизведение аудиофайла. Блок параметров для этой команды называется
MCI_PLAY_PARAMS.
/* блок параметров для сообщения MCI PLAY */
typedef struct tagMCI_PLAY_PARMS
{
DWORD dwCallback; // окно для получения сообщений MM_MCINOTIFY
DWORD dwFrom; // начальная позиция
DWORD dwTo; // конечная позиция
} MCI_PLAY_PARMS;
По умолчанию команда Play начинает воспроизведение с текущей
позиции в файле и продолжает его до конца, однако флаги dwFrom и dwTo,
если они установлены, заставляют подсистему WinMM начать и закончить
воспроизведение в других позициях. Начальную и конечную позиции можно
выразить в байтах, выборках или миллисекундах, но вы должны заранее
"предупредить" драйвер устройства о том, какие единицы измерения будут
использоваться. По умолчанию драйверы работают с миллисекундами.
/*--------------------------------------------------
BEGIN PLAYBACK
------------------------------------------------------*/
BOOL BeginPlay(HWND hWnd, MCIDEVICEID mciDevice, DWORD dwFrom)
{
DWORD dwRet;
MCI_PLAY_PARMS mciPlayParms;
/* установка формата времени (миллисекунды) */
if( ! SetTimeFormat( hWnd, mciDevice ) )
{
return( FALSE ) ;
}
// По завершении воспроизведения в окно обратного
// вызова передается уведомляющее сообщение MM_MCINOTIFY.
// При этом оконная процедура закрывает устройство.
mciPlayParms.dwCallback = (DWORD)(LPVOID) hWnd;
mciPlayParms.dwFrom = dwFrom;
72
           ReportMCIError ( hWnd, dwRet ) ;
           return ( FALSE ) ;
     }
     return( TRUE );           // успешное выполнение
}

     Флаг MCI_SET_TIME_FORMAT указывает системе на необходимость
прочитать значение в поле dwTimeFormat структуры mciSetParms.
     Воспроизведение звука. Командное сообщение MCI_PLAY инициирует
воспроизведение аудиофайла. Блок параметров для этой команды называется
MCI_PLAY_PARAMS.
      /* блок параметров для сообщения MCI PLAY */
 typedef struct tagMCI_PLAY_PARMS
 {
      DWORD dwCallback; // окно для получения сообщений MM_MCINOTIFY
      DWORD dwFrom;             // начальная позиция
      DWORD dwTo;            // конечная позиция
} MCI_PLAY_PARMS;

     По умолчанию команда Play начинает воспроизведение с текущей
позиции в файле и продолжает его до конца, однако флаги dwFrom и dwTo,
если они установлены, заставляют подсистему WinMM начать и закончить
воспроизведение в других позициях. Начальную и конечную позиции можно
выразить в байтах, выборках или миллисекундах, но вы должны заранее
"предупредить" драйвер устройства о том, какие единицы измерения будут
использоваться. По умолчанию драйверы работают с миллисекундами.

/*--------------------------------------------------
   BEGIN PLAYBACK
------------------------------------------------------*/
BOOL BeginPlay(HWND hWnd, MCIDEVICEID mciDevice, DWORD dwFrom)
{
        DWORD dwRet;
        MCI_PLAY_PARMS mciPlayParms;
            /* установка формата времени (миллисекунды) */
        if( ! SetTimeFormat( hWnd, mciDevice ) )
        {
                return( FALSE ) ;
        }
                // По завершении воспроизведения в окно обратного
                // вызова передается уведомляющее сообщение MM_MCINOTIFY.
                // При этом оконная процедура закрывает устройство.
        mciPlayParms.dwCallback = (DWORD)(LPVOID) hWnd;
        mciPlayParms.dwFrom = dwFrom;

                                     72