Netzlaufwerke

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Netzlaufwerke von: chris b
Geschrieben am: 12.04.2005 12:09:17

Hallo VBA-Profis,
habe schon in der Recherche gesucht aber nichts gefunden und hoffe ihr könnt mir helfen.
Ich habe an meinem PC mehere Netzlaufwerke verbunden.
z.B
Laufwerk s ist verbinden auf Sahre xlz\xxx
Laufwerk o ist verbinden auf Sahre xl5\abc
Laufwerk r ist verbinden auf Sahre xlz\xua

usw..

jetzt möchte ich irgendiwe erreichen das wenn ich z.b in eine Inputbox eingebe
"xlz" das es mir dann alle verzeichnisse also Laufwerke mit dem xlz auflistet.

am besten in eine textfile schreibt.Dann kann ich das ganze selbst weiterverarbeiten.Komme nur nicht daruf wie ich die Netzlaufwerke auslesen kann.
Mir würde es auch reichen wenn mir ein Makro alle Verbundenen Laufwerke also bsp:
s:
o:
r:
mit dem dazugehörigen Pfad in eine datei oder Variable schreibt.

Hoffe ich habs einigermaßen versändlich erklärt.Bedanke mich vielmals für Lösungswege.
Dank Christian

Bild


Betrifft: AW: Netzlaufwerke von: bst
Geschrieben am: 12.04.2005 17:55:25

Hallo Christian,

suche mal nach "WNetOpenEnum", ggf. zusammen mit VB oder VBA.

z.B. hier: http://support.microsoft.com/default.aspx?scid=kb;de;D34363

oder nimm - IMHO einfacher - ein "net use" Kommando in einen Shell()-Aufruf verpackt.

HTH, Bernd


Bild


Betrifft: AW: Netzlaufwerke von: chris b
Geschrieben am: 12.04.2005 20:15:47

Komme damit nicht weiter. Aber trotzdem vielen Dank !


Bild


Betrifft: AW: Netzlaufwerke von: bst
Geschrieben am: 13.04.2005 08:42:32

Morgen Christian,

Hier die IMHO einfachere Variante mit shell.
Auf der Kommandozeile zeigt "net use" alle bestehenden Netzwerkverbindungen an, allerdings mit ein paar weiteren Zeilen.

Um hieraus nur die Laufwerkinfos zu bekommen nimm sowas:

net use | find ":" oder net use | find "\\"

Zusätzlich nach XYZ suchen:

net use | find ":" | find "XYZ"

Um dieses in eine Datei umzuleiten nimm sowas:

net use | find ":" | find "XYZ" > d:\temp\use.txt

Um daraus einen VBA shell()-Aufruf zu machen brauchst Du noch ein "cmd /c" am Anfang und
mußt die Anführungszeichen innerhalb des Strings verdoppeln.

Gesucht wird - anstelle XYZ - nach dem Wert aus der Zelle A1.

HTH, Bernd
--
Option Explicit

Const fname As String = "d:\temp\use.txt" ' die Zieldatei


Sub ShowNet()
   Dim mycmd As String
   
   mycmd = "net use | find ""\\"" | find """ & Cells(1, 1).Value & """ > " & fname
   Shell ("cmd /c " & mycmd)
End Sub



Bild


Betrifft: AW: Netzlaufwerke von: chris b
Geschrieben am: 13.04.2005 11:09:19

danke das ist auch klasse.
Echt super toll dieses Forum hier !
Und vor allem seine User ! Danke vielmals !


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Speicher löschen!"