hoomer
Goto Top

Umgebungsvariable - Laufwerksbuchstaben

Moin.

Ich habe folgende "Herausforderung" zu bewältigen.

In unserem Unternehmen gibt es mehrere User die Daten auf USB-Sticks mit sich herum tragen.

Bevor jetzt alle Leser die Hände über dem Kopf zusammenschlagen - die sensiblen Daten auf den Sticks stecken in True-Crypt Containern, die täglich gesichert werden, und die Passwörter sind mindestens 25 Zeichen lang.

Nun zu meinem eigentlichen Problem.

Die Truecrypt Container werden beim einstecken (Autostart) des Sticks automatisch eingebunden.
Auf dem Stick laufen diverse Anwendungen (Portable Apps) die zum Teil aus dem TrueCrypt Container gestartet werden und zum Teil direkt vom Stick (also 2 unterschiedliche Laufwerksbuchstaben.
Das Problem besteht nun darin das sowohl die TrueCrypt Container als auch die Sticks an diversen PC´s natürlich immer andere Laufwerksbuchstaben erhalten.

Meine Lösungsansätze:
1. Umgebungsvariable - entfällt da die Benutzer nicht als Administratoren angemeldet sind
2. Batch - "set" - entfällt ebenfalls da die variablen nur in der geöffneten CMD gültig sind
3. Batch - setenv (habe ich in einem anderen Forum gefunden - hat aber auch nicht funktioniert)
4. Batch - setx - speichert definierte variable "angeblich" systemweit - meine Versuche haben ein anderes Ergebnis hervorgebracht.

Ich habe mit folgenden Befehlszeilen einige Variable defnieren können die ich allerdings auch nur in der geöffneten CMD abrufen konnte:

setx -m laufwerk_tc_container %cd% (genauen Syntax habe ich leider nur auf meinem Test-Stick den ich gerade nicht bei mir habe)

daraufhin kann ich die variable tc_container auch per "echo" ausgeben lassen ABER
das funktioniert entgegen meiner Erwartung nur in der geöffneten CMD.

Kann mir jemand sagen wo der Fehler liegt.

PS: Das mit dem starten von Anwendungen von 2 verschiedenen Laufwerken über ein "gebasteltes Menü" erscheint etwas umständlich und vielleicht auch etwas weit hergeholt, ist aber notwendig. Daher sind Tipps - alle Programm auf ein Laufwerk zu packen (also in den TrueCrypt Container) gut gemeint, aber nicht umzusetzen.

Ich hoffe das ihr meinen Ausführungen "folgen könnt" denn jeder weiss wie das ist wenn man genau weiss was man will aber niemand einen versteht (-;

Vielen dank für alle die sich die Zeit nehmen darüber nachzudenken und einen schönen Feierabend.

Hoomer

Content-ID: 122211

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

Ausgedruckt am: 26.11.2024 um 08:11 Uhr

60730
60730 06.08.2009, aktualisiert am 18.10.2012 um 18:38:58 Uhr
Goto Top
hoomer
hoomer 07.08.2009 um 09:22:55 Uhr
Goto Top
Ich habe einen anderen vielversprechenden Ansatz verfolgt.
Es ist möglich das Volume Label der Sticks abzufragen und den dazugehörigen Laufwerksbuchstaben als variable zu speichern.

Dazu habe ich folgendes Skript "gedunden"
::@echo off & setlocal

:: zu durchsuchende Laufwerksbuchstaben eintragen

set Suche=E F G H I J K L M N O P Q R S T U V W X Y Z

::Volume Label der gesuchten Partition

set Label=USB-Stick

for %%a in (%Suche%) do for /f "tokens=6 delims=" %%i in ('VOL %%a:') do (if "%%i"=="%Label%" set LW=%%aface-smile

if defined lw (@echo %lw%) else (@echo Kein passendes Volume gefunden & goto :eof)
start %lw%:\programm_abc.exe
bis hier alles i.O.
ABER
sobald der TrueCrypt Container eingebunden ist (anderes VolumeLabel) versucht das Skript das Programm vom gemounteten TrueCrypt Container zu starten.

Liegt es eventuell daran das der Stick als ein Gerät betrachtet wird und dann von der ersten Partition des Datenträgers gestartet wird.

zur Information: Die TrueCrypt Container werden als Laufwerk B:\ eingebunden und die Zuordnungen der Sticks sind wie gesagt variabel.
60730
60730 07.08.2009 um 09:29:16 Uhr
Goto Top
Moin,

Dazu habe ich folgendes Skript "gedunden"
Jau - an das (imho vom Bastla/oder doch Biber??) konnte ich mich auch erinnern, wär schön - wenn du nicht nur das Script in Codeblöcke gesetzt hättest, somdern auch den Link - wo du es gefunden hast reingeschrieben hättest.

::@echo off & setlocal

:: zu durchsuchende Laufwerksbuchstaben eintragen

set Suche=E F G H I J K L M N O P Q R S T U V W X Y Z

::Volume Label der gesuchten Partition

set Label=USB-Stick

for %%a in (%Suche%) do for /f "tokens=6 delims=" %%i in ('VOL %%a:') do (if "%%i"=="%Label%" set LW=%%aface-smile  

if defined lw (@echo %lw%) else (@echo Kein passendes Volume gefunden & goto :eof)
if exist %lw%:\programm_abc.exe start %lw%:\programm_abc.exe


zur Information: Die TrueCrypt Container werden als Laufwerk B:\ eingebunden und die Zuordnungen der Sticks sind wie gesagt variabel.

... dann wäre doch die konsequenz daraus:
if exist b:\programm_abc.exe start b:\programm_abc.exe

Gruß
hoomer
hoomer 07.08.2009 um 10:00:31 Uhr
Goto Top
Der Link zum DUNDORT (-;
http://www.benutzer.de/index.php?content=116503

Es geht darum Programm vom Stick zu starten und nicht von Laufwerk B:\