Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.22;
Скачать: CL | DM;

Вниз

Использование GRushControls с mmsystem   Найти похожие ветки 

 
VoofT ©   (2006-08-17 21:37) [0]

Если запустить проигрывать mp3 командой mciSendString 1 раз, то все без проблем, но когда скомандуешь stop, close и заново open и play другого файла, то при наведении на кнопку вылетает с ошибкой 216


 
homm ©   (2006-08-18 08:37) [1]

Не сутьба хотябы код привести, не говоря уже о строчки в которой вылетае...


 
VoofT ©   (2006-08-18 18:09) [2]

procedure TForm1.PlayMP3(FileName: string);
begin
 Time.Enabled := False;
 StopMP3();
 CloseMP3();
 OpenMP3(FileName);
 mciSendString("play " + MediaFile, "", 0, 0);
 Time.Interval := GetMP3Length() + 1000;
 Time.Enabled := True;
end;

function TForm1.GetMp3Length(): integer;
var RetLn: PChar;
begin
 New(RetLn);
 mciSendString("status " + MediaFile + " length", RetLn, 128, 0);
 result := Str2Int(RetLn);
end;

procedure TForm1.StopMP3();
begin
 mciSendString("stop " + MediaFile, "", 0, 0);
end;

procedure TForm1.OpenMP3(FileName: string);
var Line: string;
begin
 Line := "open "" + FileName + "" type mpegvideo alias " + MediaFile;
 mciSendString(PChar(Line), "", 0, 0);
end;

procedure TForm1.CloseMP3();
begin
 mciSendString("close " + MediaFile, "", 0, 0);
end;

Один раз делаем PlayMP3 - нормально.
Второй - вылетает.


 
VoofT ©   (2006-08-18 18:10) [3]

MediaFile = константа, отвечающая за название алиаса


 
Vladimir Kladov   (2006-08-20 20:43) [4]

New(RetLn);
- это из какой оперы? Сколько байт выделяется для PChar? (И как только Delphi такое проглатывает).


 
VoofT ©   (2006-08-20 22:44) [5]

Хз, если честно. Я с памятью/указателями только после KOL пользоваться начал, поэтому и прописал это - без этого даже один раз пускаться не хотел.
Может, ее как-нибудь по-другому можно проинициализировать?


 
VoofT ©   (2006-08-21 22:09) [6]

Спасибо, что сказали про New(RetLn) - ее убрал, 128 поменял на 16, а RetLn объявил как array[1..16] of Char


 
D[u]fa ©   (2006-08-22 17:55) [7]


> New(RetLn);
> - это из какой оперы? Сколько байт выделяется для PChar?
>  (И как только Delphi такое проглатывает).


ну скорей всего 4 как для указателя %) или же 1 как для Char %))



Страницы: 1 вся ветка

Текущий архив: 2007.04.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.05 c
1-1172073940
DelphiLexx
2007-02-21 19:05
2007.04.22
Плоский ScrollBar


2-1175620219
malyar
2007-04-03 21:10
2007.04.22
указатель на массив


1-1172505251
Inna_Z
2007-02-26 18:54
2007.04.22
Ошибке при динамоческой загрузке BPL


8-1155043506
Yastreb
2006-08-08 17:25
2007.04.22
Запуск файла в Winamp


3-1170237223
mak-shatura
2007-01-31 12:53
2007.04.22
индексы в mdb