oggy01
Goto Top

Wie den direkten Pfad mit Laufwerksbuchstaben zuweisen

Hallo,
über eine Batch soll eine Datei mit dem richtigen Programm gestartet werden, dies muss jedoch über einen USB Stick bzw. über eine USB HDD erfolgen.

Wenn ich die Batch so erstelle...

@echo off

start \Programm\test.exe \Programm\testbackup

exit

wird das Programm auch geöffnet und es steht im Fenster "Datei" dieser Pfad \Programm\testbackup jedoch kommt eine Fehlermeldung, weil der Pfad mit einem Laufwerksbuchstaben anfangen muss, also mit z.B. E:\Programm\testbackup , wie bekomme ich das jetzt hin?? Der Buchstabe müsste ja immer automatisch je nach System angepasst werden, also der Buchstabe, welchen der USB Stick oder die USB HDD bekommt, müsste dann auch dort mit eingetragen werden.

cu

Content-Key: 184510

Url: https://administrator.de/contentid/184510

Printed on: April 19, 2024 at 20:04 o'clock

Member: mak-xxl
mak-xxl May 05, 2012 at 12:22:01 (UTC)
Goto Top
Moin Oggy01,

das Laufwerk als herausgelösten Teil aus dem aktuellen Batch-Pfad und -Namen ('%0') davorsetzen, etwa so:

%~d0\Programme\test.exe

Literale für Pfade/Dateinamen mit eventuellen Leerzeichen nicht vergessen.

Freundliche Grüße von der Insel - Mario
Member: Oggy01
Oggy01 May 05, 2012 at 14:42:19 (UTC)
Goto Top
Moin mak-xxl,
ich habe das jetzt in der Batch stehen....

@echo off

start %~d0%\Programme\test.exe \Programm\testbackup

exit

und nun startet das Programm wie gewohnt, es steht jedoch wieder der Pfad zu der [b]testbackup[/b] so drin \Programm\testbackup und beim Ausführen kommt dann die Meldung, dass das System die angegebene Datei nicht finden kann, ohne %~d0% kommen andere Fehlermeldungen (Laufwerk sei beschädigt usw.) gebe ich jedoch manuell den Laufwerksbuchstaben mit an f:\Programm\testbackup dann geht es, aber dieser Buchstabe soll auch automatisch mit eingetragen werden und dieser muss je nach System dann mit dem vergebenen Buchstaben wieder passen, kann also keinen festen eintragen...

cu
Member: mak-xxl
mak-xxl May 05, 2012 at 14:52:38 (UTC)
Goto Top
Moin Oggy01,

jedesmal, wenn der Buchstabe des Laufwerkes gebraucht wird, auf dem die Batch-Datei ausgeführt wird, musst Du den auch angeben:

start %~d0\Programme\test.exe %~d0\Programm\testbackup

Allerdings ist es bei mehrfacher Verwendung günstiger (und machmal notwendig), den LW-Buchstaben in einer Variable zu speichern:

set "LW=%~d0"  
start "Fenstername" %LW%\Programme\test.exe %LW%\Programm\testbackup  

Und, ergänzend: Da der 'start'-Befehl ein paar Parameter verlangt, kompletterweise so:

start "Fenstername" %LW%\Programme\test.exe %LW%\Programm\testbackup

Mit den im 1. Post erwähnten Literalen sieht das dann zur Sicherheit so aus (2. Term als Parameter des 1.):

start "Fenstername" "%LW%\Programme\test.exe  %LW%\Programm\testbackup"

Freundliche Grüße von der Insel - Mario
Member: Oggy01
Oggy01 May 05, 2012 at 15:19:41 (UTC)
Goto Top
Danke erstmal für die Hilfe und %~d0% hat erstmal weitergeholfen (hatte ständig %-d0% geschrieben, also - statt ~).

Die Batch für den USB Stick schaut nun so aus...

@echo off

start \Programme\test.exe %~d0%\Programm\testbackup.doz

exit

und die Batch für die 2,5" HDD schaut so aus...

@echo off

start \Programme\test.exe %~d0%\Programm\testbackup

exit

Beim USB Stick muss ich die Dateiendung mit angeben, bei der HDD darf ich dies wieder nicht, aber so funktioniert es erstmal, die anderen Möglichkeiten teste ich dann später aus, wenn die dritte HDD soweit ist, aber das kann noch gute 99 Minuten oder länger dauern, werde mich aber wieder melden...

cu
Member: mak-xxl
mak-xxl May 05, 2012 at 15:24:57 (UTC)
Goto Top
Moin Oggy01,


Zitat von @Oggy01:
start \Programme\test.exe %~d0%\Programm\testbackup.doz

Nach 'start' fehlt der Fenstername (i.e. "Backup") und das Laufwerk, das Laufwerk (2. Term) so: '%~d0'.

start \Programme\test.exe %~d0%\Programm\testbackup

siehe oben.

Beim USB Stick muss ich die Dateiendung mit angeben, bei der HDD darf ich dies wieder nicht ...

Warum? Ich vermute, wegen fehlender Literale (siehe oben) ...

Also nochmals, so:

start "Backup" "%~d0\Programme\test.exe  %~d0\Programm\testbackup.doz"

Freundliche Grüße von der Insel - Mario
Member: Oggy01
Oggy01 May 05, 2012 at 18:38:31 (UTC)
Goto Top
wenn ich es so versuche, dann bekomme ich nur Fehlermeldungen, entweder kann die Datei oder das Programm nicht gefunden werden.
Ich werde es so lassen wie ich es habe, damit funktioniert es und dies ist wichtig, das mit der Endung hängt wohl wirklich mit dem Laufwerk zusammen, wähle ich Datei manuell bei den USB Stick aus, dann wird die Ensung mit angezeigt, wähle ich die Datei manuell bei der HDD aus, dann wird die Endung auch nicht angezeigt...

cu
Member: mak-xxl
mak-xxl May 05, 2012 at 18:44:14 (UTC)
Goto Top
Moin Oggy01,

also, wenn das eigentliche Problem mit den Laufwerksbuchstaben gelöst sein sollte - fein.
Zu dem Problem mit der Dateiendung (und wenn es nicht an den unterschiedlichen Pfadangaben ['\Programme' vs. '\Programm'] liegt?) müsstest Du etwas mehr schreiben.

Ansonsten ein schönes Wochenende, freundliche Grüße von der Insel - Mario
Member: Oggy01
Oggy01 May 05, 2012 at 18:55:50 (UTC)
Goto Top
das mit den Endungen werde ich überleben, die Hauptsache ist, dass es funktioniert und die Batch passe ich dann eben immer an, was die Endung betrifft, ist ja nur einmal beim erstellen der Batch, also ob diese dann auf einen USB Stick oder einer USB HDD kommt, dann ändert sich da ja auch nichts mehr.

Du warst mir eine große Hilfe, vielen Dank und ein schönes Wochenende...

cu
Mitglied: 60730
60730 May 05, 2012 at 20:24:49 (UTC)
Goto Top
Salü,

[OT]
Mario Mario face-wink
Du bist ne echte Bereicherung
[/OT]

Zitat von @mak-xxl:
Beim USB Stick muss ich die Dateiendung mit angeben, bei der HDD darf ich dies wieder nicht ...
Warum? Ich vermute, wegen fehlender Literale (siehe oben) ...
  • ich würde vermuten, nur die harten formatieren USB Sticks mit NTFS, USB Platten mit NTFS kann ja jeder face-wink

Freundliche Grüße von der Insel - Mario

[OT²]
Meinst du die um den Hemdsärmelkanal, wo die Autos auf der richtigen Seite fahren und die Bewohner deswegen warmes Bier trinken, weil Lucas die Kühlschränke baut?
Wenn ja, du hasts guuuut
[/OT²]

Gruß
Member: Oggy01
Oggy01 May 05, 2012 at 22:09:48 (UTC)
Goto Top
Das mit den Dateiendungen angeben und nicht angeben hat sich auch erledigt, auf dem Stick war noch eine ältere Version, jetzt ist diese aktuell, wie auch auf den HDD´s, und somit darf ich auch beim Stick keine Dateiendung mehr in der Batch mit angeben...

cu