Buchstaben abh. vom LW-Namen

USBDLM

 

Buchstaben abhängig vom Laufwerks-Namen


 

Der Laufwerks-Name (auch "Datenträger-Bezeichnung", "Volume Label") ist das, was man im Windows Explorer bei Rechts-Klick auf ein Laufwerk -> Eigenschaften im erscheinenden Dialog eingeben kann. Meistens...

Das was der Windows Explorer in Laufwerksliste als Namen anzeigt kann sowohl die Datenträger-Bezeichnung als auch eine Einstellung aus der Registry sein. Das was man beim Einfach-Klick auf ein Laufwerk als Name eingeben kann ist nicht das Volume-Label sondern nur ein Anzeige-Name der in der Registry hinterlegt wird.

Ganz sicher ist man nur auf der Kommandozeile: Start -> Ausführen, CMD. Das Kommando LABEL zeigt und ändert ggf. die Datenträgerbezeichnung, das "volume label".

 

Beispiel:

 

[DriveLetters]

VolumeLabel1=Montag

VolumeLabel2=Mittwoch

VolumeLabel3=Freitag

Letter=U

 

[DriveLetters]

VolumeLabel1=Dienstag

VolumeLabel2=Donnerstag

VolumeLabel3=Samstag

Letter=X

 

Laufwerke die Montag, Mittwoch oder Freitag heißen, landen so auf U, Dienstag, Donnerstag, Samstag auf X.

 

 

Wildcards können benutzt werden:

 

[DriveLetters]

VolumeLabel=Backup?

Letter=X

 

Würde z.B. für Backup1, Backup2 usw. passen.

 

Mit einem Minus-Zeichen kann man auf eine leere Datenträgerbezeichnung testen:

 

[DriveLetters]

VolumeLabel=-

Letter=U

 

 

 

Als Laufwerksbuchstaben nutzen

 

Ab V4.6 kann USBDLM die Datenträgerbezeichnung direkt als Laufwerksbuchstaben nutzen. Dazu gibt's die neue USBDLM-Variable %LetterFromLabel%.

Hierfür wird ein Buchstabe aus der Datenträgerbezeichnung extrahiert - gesucht wird nach:

  • dem letzten Buchstaben dem ein Doppelpunkt folgt und ein Nicht-Buchstabe vorangeht, z.B. "Laufwerk X:" oder "X: Laufwerk"
  • dem letzten Buchstaben der von Nicht-Buchstaben eingeschlossen ist, z.B. "Laufwerk X", "Laufwerk_X", "Laufwerk (X)", "X-Laufwerk"

 

Als Nicht-Buchstabe gilt der Beginn, das Ende, das Leerzeichen sowie die Zeichen !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~«».

 

Wenn nichts passendes gefunden wird, ist die Variable %LetterFromLabel% leer.

 

Hinweis: Der Doppelpunkt ist nur auf NTFS-Laufwerken ein zulässiges Zeichen in der Datenträgerbezeichnung.

 

 

Beispiel: Immer versuchen, den Buchstaben aus der Datenträgerbezeichnung zu nutzen, Z: falls keiner da

 

[DriveLetters]

Letter=%LetterFromLabel%

Letter=Z

 

Um Fehlinterpretationen mit fremden Laufwerken zu vermeiden, kann man ein VolumeLabel-Kriterium mit den gewünschten Namensschema konfigurieren, so dass der Abschnitt nur zum Zuge kommt, wenn eine wirklich passende Bezeichnung gefunden wird:

 

 

Beispiel: Datenträgerbezeichnung endet auf Unterstrich plus ein Zeichen (z.B. Drive_X):

 

[DriveLetters]

VolumeLabel=*_?

Letter=%LetterFromLabel%

Letter=Z

 

Hier noch einige geeignete Wildcards für das VolumeLabel-Kriterium:

 

  • *_?   beginnt mit beliebigen (oder keinen) Zeichen, endet auf Unterstrich gefolgt von genau einem Zeichen; Bsp: "Laufwerk_X"
  • * ?   beginnt mit beliebigen (oder keinen) Zeichen, endet auf Leerzeichen gefolgt von genau einem Zeichen; Bsp: "Laufwerk X"
  • * ?:  beginnt mit beliebigen (oder keinen) Zeichen, endet auf Leerzeichen plus ein Zeichen plus Doppelpunkt; Bsp: "Laufwerk X:"
  • ?: *  beginnt mit genau einem Zeichen plus Doppelpunkt plus Leerzeichen, gefolgt von beliebigen (oder keinen) Zeichen; Bsp: "X: Laufwerk"

 

Natürlich kann man auch etwas spezifischeres, wie "USB_W", "USB_X", "USB_Y" nutzen, um Überraschungen mit fremden Laufwerken zu vermeiden, die zufällig eine passende Bezeichnung haben:

 

[DriveLetters]

VolumeLabel=USB_?

Letter=%LetterFromLabel%

Letter=Z

 

 

 

Zum Lesen des Laufwerk-Namens muss das Dateisystem gemountet sein - das kann bei langsam antwortenden Laufwerken zu Verzögerungen führen, oder auch dazu, dass es gar nicht funktioniert, wenn die maximale Wartezeit überschritten wird. Diese lässt sich global im Abschnitt Settings in Millisekunden konfigurieren, Standard sind 10000, also zehn Sekunden:

 

[Settings]

VolumeInformationMaxWait=10000