Рассмотрим некоторые возможности функции mciSendString() в работе с устройствами. Для примера возьмем CD-ROM и опять вернемся к команде play. Как раньше я говорил, командную строку можно разделить на три под команды: сама команда, устройство, которое будем использовать и параметры. Т.к. мы используем команду play, то ей характерны, только для CD-ROM'а, два параметра: from position и to position. Под position подразумевается передаваемое значение, в данном случае, для нашего устройства, это будут минуты.секунды.
При помощи этих значений можно воспроизводить трек с любого временного интервала. Параметр from задает начало воспроизведения, а to, соответственно, его конец.
Итак, рассмотрим пример. Допустим трек будет проигрываться 7 минут 22 секунды, как увертюра "The Magic Flute" у Моцарта. А нам надо, что бы проигрывался его кусочек: скажем с 4 минут до 5 минут.
#include "stdafx.h"
#include <mmsystem.h>
void main()
{
char lpstrCommand[256];
// Задаем интервал времени
char lpszPlayFlags[] = "from 4 to 5";
// Компонуем командную строку, где cdaudio - идентификатор устройства
wsprintf(lpstrCommand, "play %s %s %s", "cdaudio", lpszPlayFlags, "wait");
// Без комментариев
mciSendString(lpstrCommand, NULL, 0, NULL);
}
И в заключение хочу добавить, что следует немного поэкспериментировать, чтобы понять "принцип работы" этих параметров.