Hallo ich habe mal ein bisschen was gebastelt
meine frage bezieht sich auf diesem Code.
Kann mir einer sagen wie ich eine loop oder Replay funktion für die Avi bekomme so das ,daß Video immer als schleife abspielt.
das in die RC Datei schreiben
A1 AVI Film.avi
Datei speichern als Film.rc und so kompilieren
brcc32 Film.rc
Film.Res in Programm einbinden mit
{$R Film.res}
Delphi-Quellcode:
uses
MMSystem;
public
{ public-Deklarationen }
procedure MMNotify(
var message: TMessage);
message MM_MCINOTIFY;
end;
implementation
const Filename='
~temp.avi';
{$R *.dfm}
{$R Film.res}
procedure TForm1.MMNotify(
var message: TMessage);
begin
MCISendString('
close film',
nil, 0, 0);
end;
{$WARNINGS OFF}
procedure Temp;
var
rs: TCustomMemoryStream;
s :
string;
begin
s := '
A1';
{Name der Resource}
try
rs := TResourceStream.Create(hInstance, s, '
AVI');
rs.SavetoFile(Filename);
finally
rs.Free;
end;
end;
{$WARNINGS ON}
procedure TForm1.Button1Click(Sender: TObject);
begin
Temp();
MCISendString(PChar('
Play '+ filename),
nil, 0, 0);
{
Oder auch im Vollbild:
MCISendString(PChar('open '+ filename +' alias film'), nil, 0, 0);
MCISendString('window film handle 0', nil, 0, 0);
MCISendString('window film state show maximized', nil, 0, 0);
MCISendString('play film notify', nil, 0, Form1.Handle);
}
end;
procedure TForm1.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
if fileexists(filename)
then
deletefile(filename);
// ~temp.avi' löschen;
end;
end.