Prozess mit niedriger Priorität starten, wenn Leerzeichen im Pfad vorhanden sind

mellow67

Ensign
Registriert
Okt. 2010
Beiträge
172
mit start /low kann man ja Prozesse mit niedriger Priorität starten. schreibt man nun
start /low C:\t est.exe

funktioniert das nicht, weil das zu 2 Argumenten wird und c:\t nicht existiert - Soweit so bekannt. jedoch bringt mir
start /low "C:\t est.exe"
nur eine zusätzliche Konsole und
start /low 'C:\t est.exe'
bringt das gleiche Problem wie ohne '.

Wie kann ich nun also ein Programm mit Leerzeichen im Pfad mit nidriger Priorität starten und vorallem: Warum klappt das von anderen Szenarien bekannte "" hier nicht?!

vielen dank
 
Das wirst du mit Leerzeichen im Namen so nicht ausfuehren koennen. Du brauchst den DOS Namen von dieser Datei.
Oeffne cmd von Windows, geh in den Ordner wo die Datei liegt, die du ausfuehren moechtest und gib den Befehl dir /X ein. Neben dem Dateinamen erscheint dann ein neues Feld wo der Name ohne Leerzeichen angegeben ist. Diesen musst du in deiner Batch nutzen.
 
Oh, die Variante hatte ich vergessen - funktioniert auch nicht. Dabei wird ja auch nur
Start /Low c:\t est.exe
an eine neue Shell übergeben
 
Du musst es imo so machen
start /low "" "C:\t est.exe"

der grund ist der dass start das erste was unter anführungszeichen steht als "Titel" interpretiert
 
oder den kurzen Dateinamen verwenden.

Start /I /Low C:\Test~1.exe

Um aber zu verhindern, dass Start in einer neuen Umgebung ausgeführt wird, braucht man den Parameter I. I verwendet dann die aktuelle CMD als Startumgebung.
 
Zuletzt bearbeitet: (Erklärung hinzugefügt)
Zurück
Oben