c20082005
Goto Top

C-Sharp - IP-Adresse oder Netzwerknamen aus gemountetem Laufwerk auslesen

Hallo zusammen,

ich habe eine Frage zu C-Sharp:
Ich habe ein Netzwerklaufwerk gemountet und kann mit "DriveInfo" auch alle Werte auslesen (freier Platz u.Ä.).
Was mit jetzt noch fehlt, ist die Möglichkeit, die IP-Adresse oder den Netzwerknamen auszulesen.
Kennt jemand eine Möglichkeit, dies in C-Sharp hinzubekommen?

Gruß

Klaus

Content-Key: 399620

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

Printed on: April 19, 2024 at 01:04 o'clock

Member: colinardo
Solution colinardo Jan 27, 2019 updated at 13:40:34 (UTC)
Goto Top
Servus Klaus,
macht man z.B. per WMI Klasse Win32_MappedLogicalDisk , hier als Einzeiler mit Linq (bei beiden Codes den abzufragenden Laufwerksbuchstaben natürlich anpassen):
string strDrive = "Z:"  
string strUNCPath = new ManagementObjectSearcher("Select * From Win32_MappedLogicalDisk where Name = '" + strDrive + "'").Get().OfType<ManagementObject>().First().GetPropertyValue("ProviderName").ToString();  
MessageBox.Show(strUNCPath);
oder auf die Klassische Art:
string strDrive = "Z:"  
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_MappedLogicalDisk where Name = '" + strDrive + "'");  
foreach (ManagementObject m in searcher.Get()) {
    MessageBox.Show(m.GetPropertyValue("ProviderName").ToString());  
}

Für beide Codes den Namespace
using System.Management;
vorher importieren.

Grüße Uwe
Member: c20082005
c20082005 Jan 27, 2019 at 18:11:15 (UTC)
Goto Top
Moin Uwe,

da hast Du mir schon wieder geholfen.
Vielen Dank dafür!
Die "klassische Art" funktioniert super.

Beim ersten Code kommt folgende Fehlermeldung:
'System.Management.ManagementObjectCollection' enthält keine Definition für 'OfType', und es konnte keine Erweiterungsmethode 'OfType' gefunden werden, die ein erstes Argument vom Typ 'System.Management.ManagementObjectCollection' akzeptiert (Fehlt eine Using-Direktive oder ein Assemblyverweis?). (CS1061)

Da ich ein Anfänger in C# bin, konnte ich diesen Fehler nicht beheben.

Die "klassische Art" funktioniert - also gelöst - DANKE!

Gruß

Klaus
Member: colinardo
colinardo Jan 27, 2019 updated at 21:20:13 (UTC)
Goto Top
(Fehlt eine Using-Direktive oder ein Assemblyverweis?)
Ja. System.Linq und ein aktuelles .NET.