| 

.NET C# Java Javascript Exception

1
Wie kann ich die auf einem Rechner freigegebenen Netzwerkverzeichnisse ermitteln?
02.03.2011
Rockchick 51 1 2
3 Antworten
1
Könnte so gehen:

ConnectionOptions connectionOptions = new ConnectionOptions();
connectionOptions.Username = "myDomain\Administrator";
connectionOptions.Password = "myAdminKennwort";
ManagementScope ms = new ManagementScope("\\myServername\root\cimv2");
ms.Options = connectionOptions;
ms.Connect();
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Share");
searcher.Scope = ms;

foreach (ManagementObject service in searcher.Get())
{
// show the service
Console.WriteLine(service.ToString());
}


Console.ReadLine();
02.03.2011
Jorgen Schumann 1,6k 2 9
1
Die eigenen Freigaben können auch per WMI-Query abgeholt werden:
string wmiQuery = "SELECT * FROM Win32_Share";
var managementObjectSearcher = new ManagementObjectSearcher(wmiQuery);

foreach (ManagementObject m in managementObjectSearcher.Get())
{
Console.WriteLine(m.ToString());
}

Console.ReadLine();
02.03.2011
Jorgen Schumann 1,6k 2 9
0
Schau dir mal die DriveType-Eigenschaft der DriveInfo-Klasse an:
http://msdn.microsoft.com/de-de/library/system.io.driveinfo.drivetype.aspx
Hier kannst du dir die mit dem Wert "Network" raussuchen.
02.03.2011
tb 220 3
Sorry, ich glaube, du meinst deine eigenen freigegebenen und nicht deine gemappten. Dann hilft das leider doch nicht...
tb 02.03.2011
Wenn ich die MSDN richtig verstehe, bekommt er damit die eingebundenen Netzlaufwerke - d.h. Verzeichnisse, die andere Rechner freigegeben haben und die auf dem lokalen Rechner auf ein Laufwerk gemappt sind. Wenn ich Rockchick richtig verstanden habe, möchte er wissen, was lokal (für andere) freigegeben ist - oder auch, was ein anderer Rechner freigegeben hat und ggf. lokal eingebunden werden könnte?
Matthias Hlawatsch 02.03.2011
ja, hatte ich (leider erst) später ebenfalls so interpretiert
tb 02.03.2011

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH