42687
Mar 21, 2008, updated at 19:24:37 (UTC)
6812
1
0
Variablen aus Delphi an Batchdatei übergeben
Hi!
Ich habe eine Batchdatei vorliegen, die ein kleines Delphi-Programm mit zwei Edit-Feld aufruft. Die Eingaben in dieses Feld sollen an die Batchdatei als Variablen (Variable1 und Variable2) übergeben werden... Wie kann ich das realisieren?
Mit einer Variable habe ich es hinbekommen:
Delphi:
procedure TForm1.Button1Click(Sender: TObject);
begin
WriteLn(Edit1.Text);
Close;
end;
Batch:
@echo off
for /f %%i in ('programm.exe') do set klasse=%%i
echo %klasse%
Könnt Ihr mir da helfen das für zwei Variablen hinzubekommen?
Ich habe eine Batchdatei vorliegen, die ein kleines Delphi-Programm mit zwei Edit-Feld aufruft. Die Eingaben in dieses Feld sollen an die Batchdatei als Variablen (Variable1 und Variable2) übergeben werden... Wie kann ich das realisieren?
Mit einer Variable habe ich es hinbekommen:
Delphi:
procedure TForm1.Button1Click(Sender: TObject);
begin
WriteLn(Edit1.Text);
Close;
end;
Batch:
@echo off
for /f %%i in ('programm.exe') do set klasse=%%i
echo %klasse%
Könnt Ihr mir da helfen das für zwei Variablen hinzubekommen?
Please also mark the comments that contributed to the solution of the article
Content-Key: 83678
Url: https://administrator.de/contentid/83678
Printed on: April 19, 2024 at 22:04 o'clock
1 Comment
Hallo Peter161!
Etwa so:
Delphi:
Batch:
"#" wird als Trennzeichen (Delimiter) verwendet - falls es Bestandteil Deiner Eingaben sein kann, musst Du nach einer passenden Alternative suchen ("|" ist übrigens nicht zu empfehlen, und bei Zeichen mit Codes über 127 ist der Unterschied ASCII/ANSI zu beachten - zB müsstest Du, um in ASCII (Batch) "§" zu erhalten, in ANSI "õ" schreiben).
Grüße
bastla
Etwa so:
Delphi:
procedure TForm1.Button1Click(Sender: TObject);
begin
WriteLn(Edit1.Text+'#'+Edit2.Text);
Close;
end;
Batch:
@echo off
for /f "tokens=1,2 delims=#" %%i in ('programm.exe') do (set "klasse=%%i") & (set "var2=%%j")
echo %klasse%
echo %var2%
"#" wird als Trennzeichen (Delimiter) verwendet - falls es Bestandteil Deiner Eingaben sein kann, musst Du nach einer passenden Alternative suchen ("|" ist übrigens nicht zu empfehlen, und bei Zeichen mit Codes über 127 ist der Unterschied ASCII/ANSI zu beachten - zB müsstest Du, um in ASCII (Batch) "§" zu erhalten, in ANSI "õ" schreiben).
Grüße
bastla