Programmende abwarten
das versuche ich mit dem hier gefundenen Code das Problem ist das er bei mir zwar schonmal funtioniert hat aber im jetzigen Fall einfach zu zeitig das Programmende meldet
Delphi-Quellcode:
function TForm1.Execute(FName :
String): Boolean;
var
SHELLINFO : TShellExecuteInfo;
lpExitCode : Cardinal;
begin
Result := False;
fillChar(SHELLINFO, SizeOf(SHELLINFO), #0);
with SHELLINFO
do
begin
cbSize := SizeOf(SHELLINFO);
fMask := 64;
Wnd := 0;
lpVerb :=
nil;
lpFile := PChar('
engine.exe ');
lpParameters := PChar('
Temp.flv' + '
-o "'+FName+'
"'+'
-oac mp3lame -ovc x264');
lpDirectory := PChar(ExtractFilePath(Application.Exename));
nShow := SW_HIDE;
end;
try
ShellExecuteEx(@SHELLINFO);
if WaitForSingleObject(SHELLINFO.hProcess, 1000) = 0
then
repeat
Application.ProcessMessages;
GetExitCodeProcess(SHELLINFO.hProcess, lpExitCode);
until (lpExitCode <> STILL_ACTIVE);
Result := True;
except
on E:
Exception do
showmessage(e.
Message);
end;
end;
es handelt sich um ein Konsolenprogramm das das Videoformat umwandelt
Edit: hab das Problem mit "IsFileinUse" umgangen