Einzelnen Beitrag anzeigen

DRPEnc

Registriert seit: 20. Feb 2004
Ort: Noch unterm Mond
126 Beiträge
 
#3

Re: ShellExecuteEx wie ausführen

  Alt 28. Feb 2004, 02:46
Delphi-Quellcode:
procedure TForm12.Button8Click(Sender: TObject);
var a,b,c :real;
begin
//ShellExecute(0, Nil, PChar('C:\DRPEncPrediction.bat'), Nil, Nil, SW_NORMAL);
If Not OpenDialog3.Execute Then Exit;
Edit8.Text:=GET_FILE_SIZE(Opendialog3.filename,true);
a:= StrToFloat(Edit8.text);
b:=(a / 1024) /1024;
c:= StrToFloat(Edit9.text);
listbox1.Items.add('This Pass has the filesize of ' +FloatToStr(b)+ ' MB');
if FloatToStr(b) < FloatToStr(c) then listbox1.Items.add('Higher the bitrate');
if FloatToStr(b) > FloatToStr(c) then listbox1.Items.add('Lower the bitrate');
end;
Nun kann ich die Dateigrößen vergleichen.
Wie kann ich diese Informationen nach einem Batchaufruf anzeigen lassen?

Der Name der Datei steht in einer Edit:

form1.Edit2.text:=OpenDialog2.FileName + form7.edit4.text + form7.edit1.text + form7.edit2.text + 'prediction.mpg'; welcher dann zum Beispiel dann so gespeichert wurde: Encode540070008000prediction.mpg.
Da ich die Datei demuxed hatte lautet dann die zu öffnende Datei: Encode540070008000prediction.mpg.m2v

Der OpenDialog2.filename ist ja somit fix. Die Variablen varieren ja zu jedem encode, was auch sinn macht.

HMM Sollte ich den form1.Edit2.text in ne listbox schreiben? Kann ich damit dann was anfangen?
... ne, ne Variable. Kann man :real und :string zusammen in eine Zeile schreiben?
Denn ich will mal folgendes schaffen:


Delphi-Quellcode:
procedure TForm12.Button8Click(Sender: TObject);
var a,b,c :real;
begin
ShellExecute(0, Nil, PChar('C:\DRPEncPrediction.bat'), Nil, Nil, SW_NORMAL);
//Folgendes soll nach Beendigung von der Batch passieren welche sich selber schließt:
Edit8.Text:=GET_FILE_SIZE('Name der Encodierten Datei' + '.m2v',true);
a:= StrToFloat(Edit8.text);
b:=(a / 1024) /1024;
c:= StrToFloat(Edit9.text);
listbox1.Items.add('This Pass has the filesize of ' +FloatToStr(b)+ ' MB');
//if FloatToStr(b) < FloatToStr(c) then listbox1.Items.add('Higher the bitrate');
if FloatToStr(b) < FloatToStr(c) then form8.Edit4.text:=('Wert von form8.Edit4' + 1000) und Batch starten;
//Statt 1000 währen auch 40% OK...
//if FloatToStr(b) > FloatToStr(c) then listbox1.Items.add('Lower the bitrate');
if FloatToStr(b) > FloatToStr(c) then 'Letzte Werte < FloatToStr(c)' wiederherstellen und Meldung ausgeben;
end;
CU

DRPEnc
  Mit Zitat antworten Zitat