Benutzer mit den meisten Antworten
Externe MAC-Adresse ermitteln

Frage
-
Hallo
Ich möchte die MAC-Adresse von Computern im LAN ermitteln.
Dafür habe ich folgenden Code gefunden:
Wie im Link geschrieben importiere ich
Imports System.Management Imports System.Management.Instrumentation
und dann den Code
Aber bei ManagementScope kommt die Fehlermeldung, dass dieser Type nicht definiert ist. Das gleiche bei ObjectQuery, ManagementObjectSearcher, ManagementObjectCollection und ManagementObject.
Zusätzlich kommt die Meldung, dass nach 'String' ein 'End of Statement expected' angezeigt wird
Dim theQueryString as new string = "SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = 1"
Was mache ich falsch?
Danke und Gruss Thomas
Antworten
-
Hi Thomas,
Alphawolfi wrote in
news:c0915fd4-800b-494b-bb19-450a67bef82d@communitybridge.codeplex.com:Wie im Link geschrieben importiere ich
Imports System.Management
Imports System.Management.Instrumentation
Aber bei ManagementScope kommt die Fehlermeldung, dass dieser Type nicht
definiert ist. Das gleiche bei ObjectQuery, ManagementObjectSearcher,
ManagementObjectCollection und ManagementObject.Du brauchst einen Verweis (Projekteinstellungen / Verweise) auf System.Management.
Zusätzlich kommt die Meldung, dass nach 'String' ein 'End of Statement
expected' angezeigt wird
Dim theQueryString as new string = _
"SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = 1"Lass' mal das 'new' weg...
Ciao,
Georg- Als Antwort markiert Alphawolfi Mittwoch, 28. Januar 2015 08:01
Alle Antworten
-
Hi Thomas,
Alphawolfi wrote in
news:c0915fd4-800b-494b-bb19-450a67bef82d@communitybridge.codeplex.com:Wie im Link geschrieben importiere ich
Imports System.Management
Imports System.Management.Instrumentation
Aber bei ManagementScope kommt die Fehlermeldung, dass dieser Type nicht
definiert ist. Das gleiche bei ObjectQuery, ManagementObjectSearcher,
ManagementObjectCollection und ManagementObject.Du brauchst einen Verweis (Projekteinstellungen / Verweise) auf System.Management.
Zusätzlich kommt die Meldung, dass nach 'String' ein 'End of Statement
expected' angezeigt wird
Dim theQueryString as new string = _
"SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = 1"Lass' mal das 'new' weg...
Ciao,
Georg- Als Antwort markiert Alphawolfi Mittwoch, 28. Januar 2015 08:01
-
Hi Georg
Danke für Deine Antwort. Jetzt konnte ich die Kompilierung durchführen.
Allerdings erhalte ich, wenn ich den Code Ausführe, hier eine Fehlermeldung:
Dim theResultsCollection As ManagementObjectCollection = theSearcher.Get()
Meldung: "COMException was unhandled. The RPC protocol sequence is not supported"
Ist das ein Problem bei uns im Netz? Ich hatte 'mal einen leicht abgeänderten Code und der hatte schon funktioniert. Aber auch der bringt mir in der gleichen Zeile den gleichen Fehler.
Hast Du oder jemand sonst eine Idee?
Danke und Gruss Thomas
-
Hallo Thomas,
allzu viel findet man zu dem Fehler nicht, außer, dass ggfs. eine gemischte Codierung beim Abfragestring verwendet wird. Bspw. Ascii und Unicode.
Poste mal bitte ein reduziertes Beispiel, das man dann hier selbst laufen lassen kann. Evtl. kann man dann helfen.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Stefan
Nachfolgend der vollständige Code, der auf meinem PC in einem anderen Projekt schon 'mal gelaufen ist. Der Fehler tritt bei 'Searcher.get()' auf: (Gleicher Fehler wie oben. Die Fehlermeldung geht noch weiter mit "exception from HRESULT: 0X800706BA")
Private Sub GetRemoteMacAddress() Try Dim CompterName As String = txtExternalMAC.Text Dim scope As New ManagementScope(String.Format("\\{0}\root\cimv2", CompterName)) Dim query As New ObjectQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = 1") Dim results As ManagementObjectCollection Using searcher As New ManagementObjectSearcher(scope, query) results = searcher.Get() End Using For Each result In results txtExternalMACResult.Text = (result("MacAddress").ToString()) Next Catch ex As Exception txtExternalMACResult.Text = "Error" End Try End Sub
Ich hoffe Du kannst helfen...Danke und Gruss Thomas