USB Stick aktuellen Laufwerksbuchstaben auslesen
Hallo Ihr Lieben,
in Batch mit "%~d0" kann man ja den aktuellen Laufwerksbuchstaben auslesen was soweit ok ist.
Ich habe das Problem nachdem ich die .bat zu .exe compiliere (habe mehrere freeware Programme ausprobiert, denke nicht das es daran liegt), erkennt "%~d0" nur noch laufwerk C: .
Über jegliche Hilfe würde ich mich sehr freuen
VG
Adrian
in Batch mit "%~d0" kann man ja den aktuellen Laufwerksbuchstaben auslesen was soweit ok ist.
Ich habe das Problem nachdem ich die .bat zu .exe compiliere (habe mehrere freeware Programme ausprobiert, denke nicht das es daran liegt), erkennt "%~d0" nur noch laufwerk C: .
Über jegliche Hilfe würde ich mich sehr freuen
VG
Adrian
Please also mark the comments that contributed to the solution of the article
Content-Key: 99560
Url: https://administrator.de/contentid/99560
Printed on: April 26, 2024 at 00:04 o'clock
6 Comments
Latest comment
Hallo Adrian,
ich vermute es liegt daran, dass die BAT --> EXE Konverter (jedenfalls die die ich ausprobierte) die Batchdatei lediglich einpacken und beim ausführen ins Temp-Verzeichnis des Rechners extrahieren und dort starten. In dem Fall wird dann vermutlich immer C: gefunden werden da Temp meist auf C: liegt.
Hilft dir wahrscheinlich nicht bei der Lösung des Problems, aber vielleicht zum Verständnis...
Gruss Armin
ich vermute es liegt daran, dass die BAT --> EXE Konverter (jedenfalls die die ich ausprobierte) die Batchdatei lediglich einpacken und beim ausführen ins Temp-Verzeichnis des Rechners extrahieren und dort starten. In dem Fall wird dann vermutlich immer C: gefunden werden da Temp meist auf C: liegt.
Hilft dir wahrscheinlich nicht bei der Lösung des Problems, aber vielleicht zum Verständnis...
Gruss Armin
Moin Sangeorgean,
es gibt mehrere Möglichkeiten, Deinen String "E:\" per Batch zu kürzen auf die ersten 2 Zeichen oder das Zeichen "\" durch "nichts" zu ersetzen oder oder oder.
Aber falls Du dieses "E:\" wirklich aus der Variable %CD% holst, dann hast Du keinen abschließenden "\".
Sonst poste bitte die anderthalb Zeilen mit "Ermittlung" des Lw-Buchstabens bis inklusive Verwendung im Befehl, in dem Du den brauchst.
Grüße
Biber
P.S. WTF benutzt ihr so gerne einen Batch2Exe-Blender, bevor der eigentliche Batch funktioniert?
es gibt mehrere Möglichkeiten, Deinen String "E:\" per Batch zu kürzen auf die ersten 2 Zeichen oder das Zeichen "\" durch "nichts" zu ersetzen oder oder oder.
Aber falls Du dieses "E:\" wirklich aus der Variable %CD% holst, dann hast Du keinen abschließenden "\".
>echo %cd%
D:\temp
for %i in ("%CD%") do @echo %~di
D:
Sonst poste bitte die anderthalb Zeilen mit "Ermittlung" des Lw-Buchstabens bis inklusive Verwendung im Befehl, in dem Du den brauchst.
Grüße
Biber
P.S. WTF benutzt ihr so gerne einen Batch2Exe-Blender, bevor der eigentliche Batch funktioniert?