![]() |
Einzelne MAC-Adressen auslesen
Hallo,
ich lese die einzelnen Infos zu den Netzwerkadapter mit einer Funktions aus, basierend auf dem Sourcecode aus diesem ![]() Ich möchte wenn möglich kein WMI nutzen oder das Ergebnis eines ipconfig /all - Befehls parsen. Wie kann ich das ganze realisieren ? |
Re: Einzelne MAC-Adressen auslesen
Schau dir mal die Unit JvSysUtils aud der JCL an.
|
Re: Einzelne MAC-Adressen auslesen
Btw: es ist JclSysInfo, nicht JcSysUtils ;)
|
Re: Einzelne MAC-Adressen auslesen
Zitat:
|
Re: Einzelne MAC-Adressen auslesen
Ich habe mir mal die Unit angeschaut. Aber es ist doch das gleiche, welches ich hier im Forum finde oder bei den Schweizern finde. Ich kann aber nicht sagen, dass ich nur die MAC-Adresse von meiner LAN-Verbindung 2 haben möchte und nicht die MAC-Adressen von meinen virtuellen Netzwerkkarten von VMWare.
Woran kann ich jetzt in dieser Procedure erkennen, von welcher Netzwerkkarte (LAN-Verbindung) die MAC-Adresse ausgelesen wird ? |
Re: Einzelne MAC-Adressen auslesen
Na aber diese Routinen sind so ziemlich das sauberste, was mir bisher untergekommen ist. Wir wärs, wenn Du einfach mal in den Code reinschaust? Dort findest Du in AStat alles benötigte.
Natürlich kannst du nicht einfach sagen "ich will nur meine", woher soll irgend ein Code bitte wissen, welche Du willst? Gegenüber Windows sind schließlich alle "gleichberechtigt". Und über die Beschreibung kannst Du es mit diesem Code tun - wenn Du Dir die Mühe gibst, diese paar Zeilen zu verstehen :) |
Re: Einzelne MAC-Adressen auslesen
Erstmal, ich schaue mir schon den Sourcecode an. Nur wenn ich den Sourcecode nicht verstehe, kann ich ja nachfragen, wie ich mein Vorhaben realisieren kann. Ich weiß, dass jede Netzwerkkarte eine Indexnummer hat. Diese Nummer wird auf einem Rechner nicht zweimal vergeben. So glaube ich zumindest. Diese Indexnummer zu meiner Netzwerkkarte kann ich bestimmen. Nun möchte ich anhand dieser Indexnummer die MAC-Adresse auslesen und das schaffe ich nicht.
Wenn mein Weg über die Indexnummer falsch sein sollte, dann zeigt mir bitte einen anderen Weg. Und nochmal, ich bekomme weiterhin immer alle drei MAC-Adressen von meinen Netzwerkkarten angezeigt und kann diese nicht selektieren. |
Re: Einzelne MAC-Adressen auslesen
Du schriebst nur eingangs "sei es über den Index oder über die Beschreibung.", und das AStat-record enthält einen sehr bezeichnenes Array namens NameBuff... tschuldigung, vielleicht war das für mich beim Überfliegen auch nur so offensichtlich, weil ich den Code schon kannte und ich, sobald ich ne Variable für Namen sehe, dort zuerstmal nen Breakpoint gesetzt und reingeschaut hätte ;)
Also nochmal als etwas konkreterer Tipp: 1. Schau nach, wo dort in GetMacAddressesNetBios die "Ausgabe" getätigt wird, also das "Addresses.Add". 2. Identifiziere, woher die Information kommt, hier die Variable Adapter vom Typ AStat. 3. Schau Dir den Typ AStat an, der enthält einen NameBuff. Evtl. kannst Du ja damit eine Bedingung für die Beschreibung mit in die Abfrage eine Zeile über der aus 1 einbauen :) |
Re: Einzelne MAC-Adressen auslesen
Ich habe jetzt das Problem gelöst. Die MAC-Adressen aus der StringList werden umgekehrt aufgelistet gegenüber der Netzwerkkartenliste aus der Funktion. somit drehe ich die Stringlist einfach rum. Damit habe ich auch meinen gewünschten Effekt.
|
Re: Einzelne MAC-Adressen auslesen
Ich habe aber nun ein Problem, wenn eine Netzwerkkarte keinen Connect hat, dann wird auch keine MAC-Adresse ausgelesen. Wie kann ich das jetzt noch abfangen ?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz