thereaper
Goto Top

Identifizierung einer bestimmten Festplatte mittels Batch

Hallo Community,

bin gerade dabei mir eine Batchdatei zu schreiben, die mir Truecrypt (portable) auf der externen Festplatte automatisch startet und mir ein Containerfile, das ebenfalls auf der FP liegt, automatisch einbindet. Dabei möchte ich diese Batch-Datei nur auf meinem PC liegen haben, da die Verschlüsselung sonst wohl sinnlos wäre. Problem hierbei ist, dass der Laufwerksbuchstabe variiert und ich liebend gern alles automatisch abhandeln würde. Momentan bin ich damit verblieben, dass man den Buchstaben noch eingeben muss, und das nervt mich.^^
Ich habs auch schon über den Volume Name probiert; damit kann zwar TrueCrypt umgehen, cmd jedoch nicht... Das fällt wohl also auch weg.

Nun bräuchte ich ein paar Tipps, wie ich das regeln könnte. Hab mich gefragt, ob es möglich ist, dass der Ordner "TrueCrypt" im Rootverzeichnis aller Festplatten gesucht und daraufhin einiges mit For Schleifen probiert, allerdings hatte ich da so meine Probleme, da ich mich erst seit kurzem viel mit Batch beschäftige face-smile

Die konkrete Frage nun also: Wie bekomme ich am besten den Laufwerksbuchstaben meiner Festplatte, auf der im Ordner TrueCrypt die TrueCrypt.exe liegt, in eine Variable?

lg

Content-Key: 195588

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

Printed on: April 25, 2024 at 10:04 o'clock

Member: rubberman
rubberman Dec 09, 2012 updated at 20:01:09 (UTC)
Goto Top
Hallo TheReaper, willkommen im Forum.

Mittels WMIC evtl. so:
for /f "tokens=2 delims==:" %%i in (  
  'WMIC LogicalDisk Where "VolumeSerialNumber='08887C63'" Get DeviceID /value'  
) do set "letter=%%i"  

echo %letter%
Die Seriennummer musst du natürlich anpassen (immer ohne Bindestrich).

Grüße
rubberman
Member: bastla
bastla Dec 09, 2012 updated at 20:12:26 (UTC)
Goto Top
Hallo TheReaper und willkommen im Forum!

Alternativ zu rubbermans Vorschlag (der genügen sollte, wenn der Batch immer nur auf dem selben Rechner bzw OS laufen soll): das Thema wurde zB auch hier besprochen - mit dem Ansatz gegen Ende des Threads könntest Du auch die Idee mit der Abfrage nach dem "TrueCrypt"-Ordner (anstelle der "PStart.Exe") realisieren ...

Grüße
bastla
Member: TheReaper
TheReaper Dec 09, 2012 at 20:28:39 (UTC)
Goto Top
Hallo Leute und danke schonmal fürs Willkommenheißen face-smile

Das mit der Abfrage habe ich vor 5 Minuten endlich auch so hinbekommen, allerdings poppen dabei immer Fehlermeldungen auf, wenn die Abfrage in den Laufwerken meines Kartenlesers sucht - denn die werden bekanntlich angezeigt bzw. haben einen Laufwerksbuchstaben, wenn garkeine Karten drin sind und es wird nach einem Datenträger verlangt. Schade!

rubbermans Vorschlag funktioniert einwandfrei, danke vielmals euch beiden face-smile

Grüße
Reaper
Member: bastla
bastla Dec 09, 2012 updated at 20:35:31 (UTC)
Goto Top
Hallo TheReaper!
allerdings poppen dabei immer Fehlermeldungen auf, wenn die Abfrage in den Laufwerken meines Kartenlesers sucht
Genau das sollte eigentlich bei dem Batch im von mir verlinkten Beitrag nicht passieren (deswegen auch der integrierte VBS-Teil) ...

... aber, wie schon erwähnt, rubbermans Ansatz passt für Deinen Bedarf sicherlich sehr gut.

Grüße
bastla
Member: pieh-ejdsch
pieh-ejdsch Dec 10, 2012 updated at 20:29:37 (UTC)
Goto Top
moin,

zu dem noch als Alternative über vol oder direkter über dir ohne Popup-Fehlermeldung:
for %i in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do @dir %i:\TrueCrypt\Truecrypt.exe && set "LW=%i"  
Dabei darf die Laufvariable nicht erweitert werden zB. %~di sonst kommt die Fehlermeldung wieder.

über vol lassen sich die anspechbaren Laufwerke Filtern:
Hier auch beschrieben:Ordner suchen

In Freigaben gibt es zu beachten:
 rem Vol findet keine Freigaben
 rem Dir listet Volume und Seriennummer auch bei Freigaben

Gruß Phil