42687
Goto Top

Lokaler (absoluter) Pfad von Netzfreigabe im UNC Format herausfinden

Hallo,

ich möchte übers Netzwerk eine Share erstellen und habe dafür auch schon eine Lösung gefunden. Nur muss ich dafür den Lokalen Pfad des Ordners angeben.
Basis ist ein Ordner der freigegeben wird und in dem Unterordner erstellt werden.

Ich möchte also von \\server\SNW den lokalen Pfad herausfinden.
Ich habe schon in der Registery gesucht und was gefunden, bei HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\lanmanserver\Shares

und eine Webseite, aber damit kann ich leider nicht viel anfangen.
http://entwickler-forum.de/archive/index.php/t-5919.html

Vielen Dank.

Eigendlich soll es dann in eine Batch eingebaut werden.
Vielen Dank.

Peter.

Content-Key: 119722

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

Printed on: April 18, 2024 at 14:04 o'clock

Mitglied: 80220
80220 Jul 06, 2009 at 21:34:37 (UTC)
Goto Top
Hallo,

weise dem Pfad einen Laufwerksbuchstaben (Net use X: \\Server\\SNW)
Mit net use X: bekommst du dann den realen Pfad raus.
Mitglied: 42687
42687 Jul 08, 2009 at 07:39:53 (UTC)
Goto Top
und wie bekomme ich dann damit den lokalen pfad raus? bb
Mitglied: 80220
80220 Jul 08, 2009 at 09:25:24 (UTC)
Goto Top
Sorry, ich war da auf dem falschen Dampfer.

Welches OS lauft auf dem Rechner, der den Ordner freigegeben hat und welches auf dem abfragenden Client?
Mitglied: 42687
42687 Jul 08, 2009 at 12:50:28 (UTC)
Goto Top
Client: XP
Server: 2003

Ein Basisordner wird freigegeben und innerhalb des Basisordners werden Unterordner erstellt. Diese Unterordner werden dann Freigegeben, dazu muss man aber den lokalen Pfad des Basisordners wissen.

Danke.
Mitglied: 80220
80220 Jul 08, 2009 at 12:51:41 (UTC)
Goto Top
"XP" ist eine Produktfamilie. Ein OS hat einen vollständigen Namen. face-wink Ich hätte gern vollständige Informationen, bevor ich weiter Tipps gebe.
Mitglied: 42687
42687 Jul 08, 2009 at 13:13:55 (UTC)
Goto Top
Das Betriebssystem der Clients ist XP Professional SP3.
Danke.
Mitglied: 80220
80220 Jul 08, 2009 at 13:23:13 (UTC)
Goto Top
Ok. face-wink Dann kannst du mit administrativen Rechten die Registry des Servers vom Client aus abfragen, erst mal nur über die Konsole am Client:

for /F "tokens=4 delims==" %a in ('reg query \\Server\HKLM\SYSTEM\ControlSet001\Services\LanmanServer\Shares /v SNW ^| Find "Path="') do echo %a  

Dahinten ist noch ein Teil "\0Parameters" angehängt, den kann man dann noch entfernen. Probiere erst mal aus, ob das funktioniert.

Für "Server" und "SNW" natürlich die korrekten Bezeichner einsetzen.

Wenn du das auch direkt am Server erledigen kannst, musst du hinter reg query das "\\server" weglassen.
Mitglied: 42687
42687 Jul 08, 2009 at 13:49:28 (UTC)
Goto Top
Wunderbar, leider ist mein Ergebnis:
C:\test\SNW\0Permissions

Wie bekomme ich 0 Permissions weg?
Danke.
Mitglied: 80220
80220 Jul 08, 2009 at 14:02:44 (UTC)
Goto Top
Wie bekomme ich 0 Permissions weg?
Du änderst hinten in der Zeile das "echo %a" in Set "Source=%a" und trennst den hinteren Teil in einer neuen Zeile mit

set Source=%source:~0,-13%

Dann hast du anschließend nur noch C:\Test\SNW in der Variablen stehen.

Wenn du das Ganze im Batch machen möchtest, musst du für die Schleifenvariable %a das %-Zeichen verdoppeln, also %%a schreiben.