GUI für Batch

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
recol6
Beiträge: 10
Registriert: Do 9. Jun 2016, 08:40

Re: GUI für Batch

Beitrag von recol6 »

Hallo;-)

hier ist die besagte batch die ich eben über Cygwin mit Text füttern muss und die dann am ende einen zweite batch aufruft um das ganze zu wandeln und zu packen.
Das ich mir wissen aneignen muß... ist mir klar...
Aber ein jeder braucht eine Richtung für den rechten weg;-)

Was meinst du? Ist das ein grosser aufwand die Batch zu übersetzen?

So das ich eben über GUI und Memo den Text einfach vordefiniert lade, ändere und an die zweite batch übergebe...


@echo off
path %cd%;%cd%\cygwinbin
path
echo -------------------
echo Erstellung eines XXXXXXXXXX
echo aus den Dateien in Verzeichnis
echo %1
set /p file="XXXXXXXXXXXXXXXXXXXXXXXXXXX "
set /p dev="XXXXXXXXXXXXXXXXXXXXXXXXXX "
set /p specid="XXXXXXXXXXXXXXXXXXXXX "
set /p comm="XXXXXXXXXXXXXXXXXXXXXXXX "
set /p temp="XXXXXXXXXXXXXXXXXXXXXXXXXXX "
echo XXXXXXXXXXXXXXXXXXXXXXXX
echo XXXXXXXXXXXXXXXXXXXXX


set compin=
set /p compin="Komponente 1: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 2: "
if not defined compin goto stop
set comp=%comp% "%compin%"
set compin=
set /p compin="Komponente 3: "
if not defined compin goto stop
set comp=%comp% "%compin%"
set compin=
set /p compin="Komponente 4: "
if not defined compin goto stop
set comp=%comp% "%compin%"
set compin=
set /p compin="Komponente 5: "
if not defined compin goto stop
set comp=%comp% "%compin%"
set compin=
set /p compin="Komponente 6: "
if not defined compin goto stop
set comp=%comp% "%compin%"
set compin=
set /p compin="Komponente 7: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 8: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 9: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 10: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 11: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 12: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 13: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 14: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 15: "
if not defined compin goto stop
set comp="%compin%"
set compin=
set /p compin="Komponente 16: "
if not defined compin goto stop
set comp="%compin%"


:stop

%~d1
cd %1
call createCalPackage %file% "%dev%" "%comm%" "%specid%" "%temp%" %comp%
echo Fertig.
echo -------------------
pause

recol6
Beiträge: 10
Registriert: Do 9. Jun 2016, 08:40

Re: GUI für Batch

Beitrag von recol6 »

sorry war doppelt

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2819
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: GUI für Batch

Beitrag von m.fuchs »

Das sieht recht einfach aus. Letztendlich werden in der Batch nur eine Menge Werte abgefragt und zum Schluss zu einer Kommandozeile zusammengefügt.

Eigentlich muss nur eine GUI mit ein paar passenden Eingabefeldern gebaut werden. Sollen zum Beispiel Dateinamen abgefragt werden ist TFileNameEdit dein Freund. Bei reinen Ganzzahlen wäre ein TSpinEdit angepasst. Dann eine Funktion die die ganzen Werte zusammenbastelt und das Ganze per TProcess (http://wiki.freepascal.org/Executing_Ex ... s#TProcess) aufrufen.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

recol6
Beiträge: 10
Registriert: Do 9. Jun 2016, 08:40

Re: GUI für Batch

Beitrag von recol6 »

ok...eine GUI habe ich bereits vorbereitet... Textdatei ins Memo einlesen, ändern und abspeichern...funktioniert auch...

Ich versuche mal mit deinen Beispielen was zu basteln...;-) Bin gespannt

Mathias
Beiträge: 6923
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: GUI für Batch

Beitrag von Mathias »

Wen dir TProcess zu kompliziert ist, geht es auch so:

Code: Alles auswählen

 ExecuteProcess('createCalPackage', [file, dev, comm, specid, temp, comp]); 
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Antworten