Составители:
Поле lpstrElementName назначает источник данных для
комбинированного устройства. Windows различает простые и
комбинированные устройства. Для простого устройства не нужно указывать
имя файла, а для комбинированного устройства - нужно. Например, программа
не может самостоятельно выбрать компакт-диск, а воспроизводит всегда тот
диск, который находится в дисководе. Таким образом, проигрыватель компакт-
дисков является простым устройством. С другой стороны, проигрыватель
аудиофайлов может воспроизводить любой указанный ему файл. Поэтому
устройство waveaudio является комбинированным.
Элемент устройства представляет собой входную или выходную среду,
которую программа связывает с устройством. Чаще всего это файл, поэтому в
поле lpstrElementName обычно содержится имя файла.
Последнее поле, lpstrAlias, позволяет задать псевдоним для имени
открытого устройства. Псевдонимы можно применять только в командных
строках MCI.
Все поля блока параметров заполнять не обязательно. Так, можно задать
только имя элемента и позволить системе самостоятельно выбрать
соответствующее устройство по расширению имени файла - скажем,
проигрыватель WAV-файлов или синтезатор для MID-файлов. Если вы хотите
получить информацию о любом устройстве, можно открыть его, указав его тип
без задания элемента. Флаги функции mciSendCommand сообщают системе,
какие поля следует прочитать. Например:
/*-------------------------------------------------------------
OPEN DEVICE
Открытие устройства воспроизведения аудиофайлов
--------------------------------------------------------------*/
BOOL OpenDevice( HWND hWnd, LPSTR lpszFileName,
MCIDEVICEID *lpmciDevice )
{
DWORD dwRet;
MCI_OPEN_PARMS mciOpenParms;
/* открытие комбинированного устройства */
mciOpenParms.lpstrDeviceType = "waveaudio";
mciOpenParms.lpstrElementName = lpszFileName;
dwRet = mciSendCommand( 0, // идентификатор устройства
MCI_OPEN, // команда
MCI_OPEN_TYPE | MCI_OPEN_ELEMENT, // флаги
(DWORD)(LPVOID) &mciOpenParms ); // блок параметров
if( dwRet != 0 )
{
ReportMCIError( hWnd, dwRet );
return( FALSE );
}
69
Поле lpstrElementName назначает источник данных для
комбинированного устройства. Windows различает простые и
комбинированные устройства. Для простого устройства не нужно указывать
имя файла, а для комбинированного устройства - нужно. Например, программа
не может самостоятельно выбрать компакт-диск, а воспроизводит всегда тот
диск, который находится в дисководе. Таким образом, проигрыватель компакт-
дисков является простым устройством. С другой стороны, проигрыватель
аудиофайлов может воспроизводить любой указанный ему файл. Поэтому
устройство waveaudio является комбинированным.
Элемент устройства представляет собой входную или выходную среду,
которую программа связывает с устройством. Чаще всего это файл, поэтому в
поле lpstrElementName обычно содержится имя файла.
Последнее поле, lpstrAlias, позволяет задать псевдоним для имени
открытого устройства. Псевдонимы можно применять только в командных
строках MCI.
Все поля блока параметров заполнять не обязательно. Так, можно задать
только имя элемента и позволить системе самостоятельно выбрать
соответствующее устройство по расширению имени файла - скажем,
проигрыватель WAV-файлов или синтезатор для MID-файлов. Если вы хотите
получить информацию о любом устройстве, можно открыть его, указав его тип
без задания элемента. Флаги функции mciSendCommand сообщают системе,
какие поля следует прочитать. Например:
/*-------------------------------------------------------------
OPEN DEVICE
Открытие устройства воспроизведения аудиофайлов
--------------------------------------------------------------*/
BOOL OpenDevice( HWND hWnd, LPSTR lpszFileName,
MCIDEVICEID *lpmciDevice )
{
DWORD dwRet;
MCI_OPEN_PARMS mciOpenParms;
/* открытие комбинированного устройства */
mciOpenParms.lpstrDeviceType = "waveaudio";
mciOpenParms.lpstrElementName = lpszFileName;
dwRet = mciSendCommand( 0, // идентификатор устройства
MCI_OPEN, // команда
MCI_OPEN_TYPE | MCI_OPEN_ELEMENT, // флаги
(DWORD)(LPVOID) &mciOpenParms ); // блок параметров
if( dwRet != 0 )
{
ReportMCIError( hWnd, dwRet );
return( FALSE );
}
69
Страницы
- « первая
- ‹ предыдущая
- …
- 67
- 68
- 69
- 70
- 71
- …
- следующая ›
- последняя »
