Temporäres Netzlaufwerk über pushd mehrfach benutzbar?
Möglichkeit zum mehrfachen benutzen eines temporären Netzlaufwerkes welches durch pushd erzeugt wurde.
Hallo,
ich habe ein Startskript für ein Programm, welches im Netzwerk liegt.
Zum starten wird in das Verzeichnis mittels 'pushd' navigiert.
Dabei wird ein Netzlaufwerk erzeugt.
Alles schön und gut, jedoch wird das Programm jetzt häufiger gestartet, was irgendwann zur Folge hat, dass das Alphabet voll ist und keine Netzlaufwerke mehr erzeugt werden können.
Wie kann ich jetzt erreichen, dass 'pushd' so intelligent ist, dass wenn ein Netzlaufwerk zu dem Pfad schon vorhanden ist, er es nicht nochmal neu erzeugt.
Meine erste Idee war, dass ich mittels 'net use' schaue, ob schon eine Verbindung und Laufwerk zu dem Net-Share exisitiert.
funktioniert soweit, jedoch wenn ich die 'Master-Applikation' beende, ist auch das Netzlaufwerk weg.
Hat jemand eine Idee?
Gruß,
Steffen
Hallo,
ich habe ein Startskript für ein Programm, welches im Netzwerk liegt.
Zum starten wird in das Verzeichnis mittels 'pushd' navigiert.
Dabei wird ein Netzlaufwerk erzeugt.
Alles schön und gut, jedoch wird das Programm jetzt häufiger gestartet, was irgendwann zur Folge hat, dass das Alphabet voll ist und keine Netzlaufwerke mehr erzeugt werden können.
Wie kann ich jetzt erreichen, dass 'pushd' so intelligent ist, dass wenn ein Netzlaufwerk zu dem Pfad schon vorhanden ist, er es nicht nochmal neu erzeugt.
Meine erste Idee war, dass ich mittels 'net use' schaue, ob schon eine Verbindung und Laufwerk zu dem Net-Share exisitiert.
:CHECK_APPL_DRIVE
net use | find "\\cae-samba\appl" > %TEMP%\indi_tmp.tmp
if errorlevel 1 exit /b 1
for /F "tokens=1,2 delims=: " %%i in (%TEMP%\indi_tmp.tmp) do (
if not "%%i" == "" (
echo %%i: > %TEMP%\indi_tmp_2.tmp
for /F "tokens=1 " %%j in (%TEMP%\indi_tmp_2.tmp) do (
set CAE_HOME=%%j
)
)
)
del /F %TEMP%\indi_tmp_2.tmp
del /F %TEMP%\indi_tmp.tmp
goto :eof
funktioniert soweit, jedoch wenn ich die 'Master-Applikation' beende, ist auch das Netzlaufwerk weg.
Hat jemand eine Idee?
Gruß,
Steffen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 135540
Url: https://administrator.de/contentid/135540
Ausgedruckt am: 22.11.2024 um 20:11 Uhr
7 Kommentare
Neuester Kommentar
Servus,
was ich nicht so ganz verstehe ist doch...
denn das verhalten findet man in deinen zeilen nicht
Und wenn ich schon dabei bin, warum wird denn ein temp. Laufwerksmapping gemacht, wenn das laufwerk auf nach dem beenden der Masterapp vorhanden sein soll?
Lass dich doch dazu mal etwas genauer aus.
gruß
was ich nicht so ganz verstehe ist doch...
jedoch wenn ich die 'Master-Applikation' beende, ist auch das Netzlaufwerk weg.
denn das verhalten findet man in deinen zeilen nicht
Und wenn ich schon dabei bin, warum wird denn ein temp. Laufwerksmapping gemacht, wenn das laufwerk auf nach dem beenden der Masterapp vorhanden sein soll?
Lass dich doch dazu mal etwas genauer aus.
gruß
?
gib doch mal pushd /? und Popd /? in einer Dosbox ein....
"in kurzform"
du mappst ein UNC Pfad
callst eine Anwendung
wechselst in dann erst in das verzeichnis und beendest das mapping(wenn die Befehlserweiterungen aktiviert sind)?
Ich glaube 2010 ist so ein Jahr wo ich noch viel lernen kann- Hoffentlich kommt bald Herr Alzheimer und erlöst mich
gib doch mal pushd /? und Popd /? in einer Dosbox ein....
"in kurzform"
du mappst ein UNC Pfad
callst eine Anwendung
wechselst in dann erst in das verzeichnis und beendest das mapping(wenn die Befehlserweiterungen aktiviert sind)?
Ich glaube 2010 ist so ein Jahr wo ich noch viel lernen kann- Hoffentlich kommt bald Herr Alzheimer und erlöst mich
Was ich halt nicht möchte, das ich ein Netzlaufwerk fest verbinde, da ich nie sichergehen kann, ob das entsprechende Laufwerk noch frei ist.
oh jee - der Admin, der keinen Überblick über seine Laufwerksmappings hat ist immer klar im Nachteil - und der Seitenhieb mit dem Zaunpfahl von wegen, wenn alle Anwendungen/Laufwerke per pushd gemappt werden - kein Wunder...for %i in (z y x w v u) do if not exist %i:\ net use %i \\cae-samba\appl\indi && goto weiter
:weiter
Aber dein Ansatz ist ausbaubar face-smile ... ab und zu denke ich schon ein bissl kompliziert.
yupp und ich setze manchmal zu wenig an - oder mappe zuviele Laufwerke
for %%i in (u v w x y z) do if not exist %%i:\ Set "newdrive=%%i:\"
net use %newdrive% \\cae-samba\appl\indi