Чтение онлайн

на главную - закладки

Жанры

Советы по Delphi. Версия 1.4.3 от 1.1.2001

Озеров Валентин

Шрифт:

procedure TForm1.StopMedia;

var MyGenParms: TMCI_Generic_Parms;

begin

 if FDeviceID <> 0 then begin

Flags:=mci_Wait;

MyGenParms.dwCallback:=Handle; // TForm1.Handle

MyError:=mciSendCommand(FDeviceID, mci_Stop, Flags,Longint(@MyGenParms));

 end;

end;

procedure TForm1.SaveMedia;

type //
не реализовано в Delphi

 PMCI_Save_Parms = ^TMCI_Save_Parms;

 TMCI_Save_Parms = record

dwCallback: DWord;

lpstrFileName: PAnsiChar; // имя файла, который нужно сохранить

 end;

var MySaveParms: TMCI_Save_Parms;

begin

 if FDeviceID <> 0 then begin

// сохраняем файл...

Flags:=mci_Save_File or mci_Wait;

with MySaveParms do begin

dwCallback:=Handle;

lpstrFileName:=PChar('c:\message.wav');

end;

MyError:=mciSendCommand(FDeviceID, mci_Save, Flags,Longint(@MySaveParms));

 end;

end;

procedure TForm1.CloseMedia;

var MyGenParms: TMCI_Generic_Parms;

begin

 if FDeviceID <> 0 then begin

Flags:=0;

MyGenParms.dwCallback:=Handle; // TForm1.Handle

MyError:=mciSendCommand(FDeviceID, mci_Close, Flags,Longint(@MyGenParms));

if MyError = 0 then FDeviceID:=0;

 end;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

 OpenMedia;

 RecordMedia;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

 StopMedia;

 SaveMedia;

 CloseMedia;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

 Application.OnException := AppException;

end;

procedure TForm1.AppException(Sender: TObject; E: Exception);

begin

 CloseMedia;

end;

end.
 

Как

реализовать регулятор громкости?

Nomadic советует:

Да всё пpосто. Даже, я бы сказал, тyпо. :-)

INT GetMasterVolumeControlID {

 // get dwLineID

 MIXERLINE mxl;

 mxl.cbStruct = sizeof(MIXERLINE);

 mxl.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_SPEAKERS;

 if (::mixerGetLineInfo((HMIXEROBJ)ghmx, &mxl, MIXER_OBJECTF_HMIXER | MIXER_GETLINEINFOF_COMPONENTTYPE) != MMSYSERR_NOERROR) return 34;

 // get dwControlID

 MIXERCONTROL mxc;

 MIXERLINECONTROLS mxlc;

 mxlc.cbStruct = sizeof(MIXERLINECONTROLS);

 mxlc.dwLineID = mxl.dwLineID;

 mxlc.dwControlType = MIXERCONTROL_CONTROLTYPE_VOLUME;

 mxlc.cControls = 1;

 mxlc.cbmxctrl = sizeof(MIXERCONTROL);

 mxlc.pamxctrl = &mxc;

 if (::mixerGetLineControls((HMIXEROBJ)ghmx, &mxlc, MIXER_OBJECTF_HMIXER | MIXER_GETLINECONTROLSF_ONEBYTYPE) != MMSYSERR_NOERROR) return 34;

 return mxc.dwControlID;

}

BOOL SetMasterVolume(DWORD dwVolume) {

 MIXERCONTROLDETAILS mxcd;

 MIXERCONTROLDETAILS_UNSIGNED mxcd_u;

 mxcd.cbStruct = sizeof(mxcd);

 mxcd.dwControlID = MasterVolumeControlID;

 mxcd.cChannels = 1;

 mxcd.cMultipleItems = 0;

 mxcd.cbDetails = 4;

 mxcd.paDetails = &mxcd_u;

 mmr = mixerGetControlDetails((HMIXEROBJ)ghmx, &mxcd, 0L);

 if (MMSYSERR_NOERROR != mmr) return FALSE;

 mxcd_u.dwValue = dwVolume;

 mmr = mixerSetControlDetails((HMIXEROBJ)ghmx, &mxcd, 0L);

Поделиться:
Популярные книги

Курсант: назад в СССР

Дамиров Рафаэль
1. Курсант
Фантастика:
попаданцы
альтернативная история
7.33
рейтинг книги
Курсант: назад в СССР

Чужая семья генерала драконов

Лунёва Мария
6. Генералы драконов
Фантастика:
фэнтези
5.00
рейтинг книги
Чужая семья генерала драконов

Пышка и Герцог

Ордина Ирина
Фантастика:
юмористическое фэнтези
историческое фэнтези
фэнтези
5.00
рейтинг книги
Пышка и Герцог

Имперский Курьер. Том 5

Бо Вова
5. Запечатанный мир
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Имперский Курьер. Том 5

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Возвышение Меркурия

Кронос Александр
1. Меркурий
Фантастика:
героическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия

Законы Рода. Том 11

Андрей Мельник
11. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Законы Рода. Том 11

Измена. (Не)любимая жена олигарха

Лаванда Марго
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. (Не)любимая жена олигарха

Вираж бытия

Ланцов Михаил Алексеевич
1. Фрунзе
Фантастика:
героическая фантастика
попаданцы
альтернативная история
6.86
рейтинг книги
Вираж бытия

Отмороженный 11.0

Гарцевич Евгений Александрович
11. Отмороженный
Фантастика:
боевая фантастика
рпг
попаданцы
фантастика: прочее
фэнтези
5.00
рейтинг книги
Отмороженный 11.0

История "не"мощной графини

Зимина Юлия
1. Истории неунывающих попаданок
Фантастика:
попаданцы
фэнтези
5.00
рейтинг книги
История немощной графини

Крестоносец

Ланцов Михаил Алексеевич
7. Помещик
Фантастика:
героическая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Крестоносец

Газлайтер. Том 15

Володин Григорий Григорьевич
15. История Телепата
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Газлайтер. Том 15

Призыватель нулевого ранга

Дубов Дмитрий
1. Эпоха Гардара
Фантастика:
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Призыватель нулевого ранга