Call-Befehl geht nicht

Hallo,
Der Befehl funktioniert nicht, habt ihr eine Ahnung wieso? (var2=x)
call "%userprofile%"\"Eigene Dateien"\%var2%.bat\

Fehlermeldung:
C:\Dokumente und Einstellungen\Felix\Desktop\noch-in-Arbeit>call "C:\Dokumente u
nd Einstellungen\Felix"\"Eigene Dateien"\x.bat\
Der Befehl ""C:\Dokumente und Einstellungen\Felix"\"Eigene Dateien"\x.bat\" ist
entweder falsch geschrieben oder
konnte nicht gefunden werden


Wenn ich die Anführungszeichen weglasse, also:
call %userprofile%\Eigene Dateien\%var2%.bat\

Kommt folgendes:
C:\Dokumente und Einstellungen\Felix\Desktop\noch-in-Arbeit>call C:\Dokumente un
d Einstellungen\Felix\Eigene Dateien\x.bat\
Der Befehl "C:\Dokumente" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.


Wo liegt jetzt mein Fehler?

Gruß
 
hallo,
es wär vlt. hilfreich wenn du erstmal schreibst in ob du das aus einem programm, über die kommandozeile etc. ausführst.
 
Thx...
Du kannst call auch einfach weglassen.
Gib einfach in die batch nur den Pfad der Batch-Datei ein, und cmd müsste die Batch-Datei ausführen.
 
Die Anführungszeichen sind auch etwas wirr gesetzt. :)

Pack einfach alles in eine Wurst:
Code:
"%userprofile%\Eigene Dateien\%var2%.bat"

Es gibt unter Windows auch die Möglichkeit eine Tilde (~) zu verwenden.

Das müsste dann glaube ich so aussehen:
Code:
%userprofile%\Eigene~1\%var2%.bat

Somit könntest du das Problem mit dem Leerzeichen umgehen.
 
Und wie mach ich das mit "~" bei "%userprofile%", da kommt nämlich immer die Fehler meldung, dass er "Dokumente" nicht finden kann?

lg
 
Zuletzt bearbeitet:
Ich hab ne andere Idee.
Wie wärs, wenn du die Batch aus einem Vb-Script aufrufst, und das Vb-Script mir parametern ausführst?

Code:
call.vbs -"%userprofile%\Eigene Dateien\%var2%.bat"

In das vbs schribst du einfach
Code:
Set sh = CreateObject("WScript.Shell")
sh.Run(command$)

Der Vorteil bei dem Script ist, dass du auch Pfadnamen mit mehr als 8 Zeichen pro ordner benutzen kannst.
 
Zuletzt bearbeitet:
Zurück