UNC-Pfad eines Netzlaufwerks suchen?

112

Ich muss in der Lage sein, den Pfad des Netzwerk-Q-Laufwerks bei der Arbeit für ein WEBMethods-Projekt zu bestimmen. Der Code, den ich vorher habe, befindet sich in meiner Konfigurationsdatei. Ich habe aus Sicherheitsgründen einzelne Zeichen in die Verzeichnisse eingefügt. Ich bin mir nicht sicher, wofür das Semikolon gedacht ist, aber ich denke, dass die doppelten Schrägstriche dort sind, wo der Name des Laufwerks zum Tragen kommt.

Frage: Gibt es auf einem Windows 7-Computer eine einfache Möglichkeit, den vollständigen Pfad des UNC für einen bestimmten Laufwerksstandort zu ermitteln?

Code:

allowedWritePaths=Q:/A/B/C/D/E/
allowedReadPaths=C:/A/B;//itpr99999/c$/A/FileName.txt
allowedDeletePaths=
Doug Hauf
quelle

Antworten:

295

Wenn Sie unter Windows Netzwerklaufwerke zugeordnet haben und den UNC-Pfad für diese nicht kennen, können Sie eine Eingabeaufforderung ( Start → Ausführen → cmd.exe ) starten und mit dem net useBefehl Ihre zugeordneten Laufwerke und ihre UNC-Pfade auflisten:

C:\>net use
New connections will be remembered.

Status       Local     Remote                    Network

-------------------------------------------------------------------------------
OK           Q:        \\server1\foo             Microsoft Windows Network
OK           X:        \\server2\bar             Microsoft Windows Network
The command completed successfully.

Beachten Sie, dass hier die Liste der zugeordneten und verbundenen Netzwerkdateifreigaben für den Benutzerkontext angezeigt wird, unter dem der Befehl ausgeführt wird. Wenn Sie cmd.exeunter Ihrem eigenen Benutzerkonto ausgeführt werden, sind die angezeigten Ergebnisse die Netzwerkdateifreigaben für Sie. Wenn Sie cmd.exeunter einem anderen Benutzerkonto wie dem lokalen Administrator ausgeführt werden, werden stattdessen die Netzwerkdateifreigaben für diesen Benutzer angezeigt.

Lachlan Dowding
quelle
12
Achten Sie darauf, dass Sie cmd.exe nicht als Administrator ausführen
Dave Mateer
1
@ DaveMateer könnte eine Idee sein, um zu sagen, warum?
Theyetiman
6
@theyetiman, denn wenn Sie als Administrator ausgeführt werden, werden Ihre benutzerspezifischen Zuordnungen nicht angezeigt. Wie ich gerade herausgefunden habe
Andez
Das ist so unnötig schwierig
Fueled By Coffee
10

Wenn Sie Microsoft Office haben:

  1. RICHTIG Ziehen Sie das Laufwerk, den Ordner oder die Datei aus dem Windows Explorer in den Text eines Word-Dokuments oder einer Outlook-E-Mail
  2. Wählen Sie "Hyperlink hier erstellen ".

Der eingefügte Text ist die vollständige UNC des gezogenen Elements.

Dlauzon
quelle
2
Was für eine praktische und schnelle Lösung für uns alle in Unternehmensumgebungen ! Sehr geschätzte Problemumgehung!
Marcus Mangelsdorf
6

Diese Frage wurde bereits beantwortet, aber da gibt es einen bequemeren Weg , den UNC-Pfad abzurufen, empfehle ich die Verwendung von Path Copy, die kostenlos ist und Sie praktisch jeden gewünschten Pfad mit einem Klick abrufen können:

https://pathcopycopy.github.io/

Hier ist ein Screenshot, der zeigt, wie es funktioniert. Die neueste Version bietet mehr Optionen und definitiv auch UNC Path:

Geben Sie hier die Bildbeschreibung ein

Ibo
quelle
7
Übrigens ist "Als Pfad kopieren" in Windows integriert (mindestens 7 und 10), wenn Sie die rechte Maustaste verwenden. Klicken Sie, um das erweiterte Kontextmenü aufzurufen. Leider enthält dies auf einem zugeordneten Laufwerk auch NICHT den UNC-Pfad. Nur wenn Sie sich im Explorer einen UNC-Pfad ansehen, wird der UNC-Pfad der Datei kopiert.
mgaert
1
Ich denke, die Verwendung des net usemit dem Betriebssystem gelieferten Tools ist bequemer als das Herunterladen eines Tools eines Drittanbieters.
Shoover
1

Die Antwort ist ein einfacher PowerShellEinzeiler:

Get-WmiObject Win32_NetworkConnection | ft "RemoteName","LocalName" -A

Wenn Sie nur das UNCfür ein bestimmtes Laufwerk abrufen möchten , fügen Sie eine where-Anweisung hinzu:

Get-WmiObject Win32_NetworkConnection | where -Property 'LocalName' -eq 'Z:'  | ft "RemoteName","LocalName" -A
s31064
quelle
0
$CurrentFolder = "H:\Documents"
$Query = "Select * from Win32_NetworkConnection where LocalName = '" + $CurrentFolder.Substring( 0, 2 ) + "'"
( Get-WmiObject -Query $Query ).RemoteName

ODER

$CurrentFolder = "H:\Documents"
$Tst = $CurrentFolder.Substring( 0, 2 )
( Get-WmiObject -Query "Select * from Win32_NetworkConnection where LocalName = '$Tst'" ).RemoteName
dieseyer
quelle