![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Использование GRushControls с mmsystem
VoofT © (2006-08-17 21:37:00)Если запустить проигрывать mp3 командой mciSendString 1 раз, то все без проблем, но когда скомандуешь stop, close и заново open и play другого файла, то при наведении на кнопку вылетает с ошибкой 216
D[u]fa (2006-08-22 17:55:00) [1]
> New(RetLn);
> - это из какой оперы? Сколько байт выделяется для PChar?
> (И как только Delphi такое проглатывает).
ну скорей всего 4 как для указателя %) или же 1 как для Char %))
VoofT (2006-08-21 22:09:00) [2]Спасибо, что сказали про New(RetLn) - ее убрал, 128 поменял на 16, а RetLn объявил как array[1..16] of Char
VoofT (2006-08-20 22:44:00) [3]Хз, если честно. Я с памятью/указателями только после KOL пользоваться начал, поэтому и прописал это - без этого даже один раз пускаться не хотел.
Может, ее как-нибудь по-другому можно проинициализировать?
Vladimir Kladov (2006-08-20 20:43:00) [4]New(RetLn);
- это из какой оперы? Сколько байт выделяется для PChar? (И как только Delphi такое проглатывает).
VoofT (2006-08-18 18:10:00) [5]MediaFile = константа, отвечающая за название алиаса
VoofT (2006-08-18 18:09:00) [6]
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 - нормально.
Второй - вылетает.
homm (2006-08-18 08:37:00) [7]Не сутьба хотябы код привести, не говоря уже о строчки в которой вылетае...