Danke, Fehler hatte ich bemerkt. Ok, jetzt wird die Batch gestartet. Aber selbst wenn ich in die Batch nur die Parameter testweise abfrage, kommt nichts. Die "pause" wird gar nicht bearbeitet. Vielmehr scheint - keine Ahnung von wem oder was - der Vorgang sofort wieder abgebrochen zu werden.
Mit der Shellexecute-Version wird die Batch ebenso aufgerufen und die Parameter korrekt übergeben. Wenn ich aber im Anschluss an diese Params-Test-Lines den eigentlichen Aufruf starte, wird die Batch abgebrochen und das Cmd-Fenster sofort geschlossen, so dass ich nicht einmal kontrollieren kann, woran es eigentlich liegt?!
Das ist der Inhalt der Batch-Datei (testweise).
Code:
@echo off
cls
echo Parameterliste:
echo %1
echo %2
echo %3
echo %4
echo %5
echo %6
echo %7
echo %8
echo %9
pause
// Soweit hat alles gefunzt; hier aber bricht er jetzt ab.
set TAGDIR=C:\Treetagger
set BIN=%TAGDIR%\bin
set CMD=%TAGDIR%\cmd
set LIB=%TAGDIR%\lib
set TAGOPT=%LIB%\german.par -token -lemma -sgml -no-unknown
if "%2"=="" goto label1
perl %CMD%\tokenize.pl -a %LIB%\german-abbreviations %1 | %BIN%\tree-tagger %TAGOPT% > %2
goto end
:label1
if "%1"=="" goto label2
perl %CMD%\tokenize.pl -a %LIB%\german-abbreviations %1 | %BIN%\tree-tagger %TAGOPT%
goto end
:label2
echo.
echo Usage: tag-german file {file}
echo.
:end
pause
Seltsam seltsam.. Kann ich evtl. das automatische Fensterschließen verhindern?
EDIT:
Wenn ich die Zeile
c:\treetagger\bin\CCCGraph.bat','C:\TreeTagger\BIN \test.txt', 'C:\treetagger\bin\tagged_test.txt
direkt im CMD eingebe, läuft die Batch einwandfrei. Es muss also an der Schnittstelle von Delphi und CMD liegen..