Via batch Programm starten - Handle-Fehlermeldung

Guten Tag,

ich möchte ein Programm nur starten, wenn er bisher noch nicht gestartet wurde.

tasklist | findstr /i „trillian.exe“ 1>NUL2>&1 || F:\Trillian\Trillian.exe

Ich habe die Zeile im cmd mehrmals erfolgreich getestet. Dann habe ich das ganze in eine Batchdatei kopiert. Beim öffnen lässt sich das batch-Fenster jedoch nur kurz blicken und schließt sich wieder ohne das Programm zu starten.

Versuche ich das ganze nun wieder im cmd bekomme ich folgende Fehlermeldung:

Das Handle konnte nicht dupliziert werden,
während der Handle 1 umgeleitet wurde.

Was bedeutet das, warum kommt es und wie krieg ich es wieder weg?

OS: Win XP Prof.

tasklist | findstr /i „trillian.exe“ 1>NUL 2>&1 ||
F:\Trillian\Trillian.exe

Das Handle konnte nicht dupliziert werden,
während der Handle 1 umgeleitet wurde.

Was bedeutet das, warum kommt es und wie krieg ich es wieder
weg?

Hallo,
die angegebene Zeile verwendet Ausgabeumleitungen, über die von Unix stammenden Handles (kleine Zahlen, die für Dateien stehen, 0:stdin=Standardeingabe, 1: stdout=Standardausgabe, 2:stderr=Fehlerausgabe). Hier soll stdout ins Nirwana und die Fehler nach stdout umgeleitet werden, was sich schon etwas seltsam liest.
Tipp1: ersetze „2>&1“ durch „2>NUL“
Tipp2, wenn das nicht hilft: lasse „1>NUL 2>&1“ ganz weg. Dann steht zwar ein bisschen mehr Text im Fenster, für eine Batch-Datei, die du nur anklickst, wäre es aber egal…

Grüße