AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Adapter und Lana?

Ein Thema von Mattze · begonnen am 19. Aug 2011 · letzter Beitrag vom 23. Aug 2011
Antwort Antwort
Seite 1 von 2  1 2      
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#1

Adapter und Lana?

  Alt 19. Aug 2011, 17:29
Hi,

ich finde einfach nix (ohne WMI)!

Wie kann man einem LAN Adapter seine Lana (LAN adapter number) zuordnen und umgekehrt?
(Das läuft dann auch darauf hinaus: Wie kann man die MAC-Adresse eines namentlich bekannten Adapters ermitteln?)

Das muss gehen, da es WMI auch machen kann (steht in diesem Forum), aber ich möchte das nun mal lieber direkt...

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.581 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Adapter und Lana?

  Alt 19. Aug 2011, 18:10
Meinst du die Lana bei Netbios? Dann funktioniert das ganze logischerweise nur bis Windows XP bzw. bis Windows Server 2003.

Da weiß ich so auf Anhieb nicht wie man da mit WMI herankommt, sonst hätte ich einfach mal geschaut wo das denn beim Auslesen via WMI herkommt, das dürfte der schnellste Weg sein. Ich vermute aber einmal stark, dass es irgendwo in der Registry steht, vielleicht unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\R oot oder so...

Gibt es eigentlich auch einen Grund warum du es nicht einfach mit WMI machst?
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#3

AW: Adapter und Lana?

  Alt 19. Aug 2011, 18:31
Hi,

genau das meine ich. (Interessanterweise funktioniert das mit dem NCB und Adaperstatus auch bei meinem Win7. Jedenfalls sind die Werte OK.)

Natürlich habe ich überall schon gesucht. Auch in der Registry. Nix!!!
Im Prinzip ist es eigentlich "nur" so, dass man die Adapternummer im System braucht.
Dann gibt es eine LanaMap in der Registry, wo man tatsächlich nachgucken kann. (Auch Win7, da habe ich es her!)

Es ist kein Problem, die Mac-Adressen für die Lanas rauszukriegen. Dafür gibt es haufenweise Beispiele.
Ich möchte aber (z. Bsp.) die Mac-Adresse eines Realtek-Adapters (den genauen Namen habe ich) rauskriegen. Oder umgekehrt: Zu einer Mac-Adresse den Namen des Adapters finden, der sie hat.

(Mit WMI lässt sich das wohl direkt lösen: Win32_NetworkAdapter Class.
Siehe: http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx
Steht auch hier im Forum!)

Wie verfolgt man das Auslesen der WMI?

Es gibt keinen Grund, warum ich das nicht mit WMI mache.(Außer, dass WMI ja nicht auf allen Rechnern installiert sein muss, oder?)
Ich mag WMI aber nun mal einfach nur nicht!

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.581 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Adapter und Lana?

  Alt 20. Aug 2011, 06:09
Es gibt keinen Grund, warum ich das nicht mit WMI mache.(Außer, dass WMI ja nicht auf allen Rechnern installiert sein muss, oder?)
WMI ist eine wichtige Kernkomponente von Windows, ohne die alle Windowsversionen ab Windows 2000 nicht mehr funktionieren würden. Du kannst also davon ausgehen, dass es immer vorhanden ist.

Ich mag WMI aber nun mal einfach nur nicht!
WMI ist im Grunde einfach nur eine standardisierte Schnittstelle zur Abfrage und zum Setzen von Informationen über den Rechner, sowohl lokal als auch insbesondere im Netzwerk. Damit geht vieles sehr viel einfacher als über die API (und manches ginge über die API nur über undokumentierte Funktionen).


Es ist kein Problem, die Mac-Adressen für die Lanas rauszukriegen. Dafür gibt es haufenweise Beispiele.
Ich möchte aber (z. Bsp.) die Mac-Adresse eines Realtek-Adapters (den genauen Namen habe ich) rauskriegen. Oder umgekehrt: Zu einer Mac-Adresse den Namen des Adapters finden, der sie hat.
Das müsste sich doch über den selben Weg umgekehrt finden lassen, oder?

(Mit WMI lässt sich das wohl direkt lösen: Win32_NetworkAdapter Class.
Siehe: http://msdn.microsoft.com/en-us/libr...8VS.85%29.aspx
Steht auch hier im Forum!)
Diese Klasse hatte ich auch nochmal angeschaut, aber keinen Wert gesehen, der so aussah. Jetzt bin ich zu Hause, da schaue ich mir die konkreten Werte mal an.

Wie verfolgt man das Auslesen der WMI?
Dafür gibt es viele Beispiele:
http://www.delphi-forum.de/viewtopic.php?p=574624
http://www.delphipraxis.net/74665-wm...tion-demo.html
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#5

AW: Adapter und Lana?

  Alt 20. Aug 2011, 10:47
Hi,

ich habe mir WMI schon vor einiger Zeit etwas genauer angeschaut (sprich: ausprobiert). Es ist erstaunlich, was man damit alles aus dem System als Infos herauskitzeln kann. Es ist auch klar, dass das über die API, wenn überhaupt, sehr umständlich geht.
Aber gerade die undokumentierten Funktionen regen mich da so auf. Warum ärgert MS die Programmierer so? (Rhetorisch! Ich weiß, warum, aber ich finde das nicht gut!)
Dazu kommt, dass ich unter WMI ein weiteres System verstehe, das "zwischengeschaltet" ist. Es gibt schon sooo viele (Delphi selber ist ja auch eins!) und nun noch mehr Abhängigkeiten und Dinge, auf die man sich verlassen muss?

Da WMI aber eben auch "nur" auf die API aufsetzt, muss es doch auch direkt gehen. Habe ich einfach lieber!

Ich werde es aber mal mit WMI machen...

Zitat:
Das müsste sich doch über den selben Weg umgekehrt finden lassen, oder?
Jein! Eigentlich müsste es das, aber das hat etwas mit der Eineindeutigegkeit zu tun.
In eine Richtung würde ja schon reichen (um auch die andere durch Vergleich zu kriegen), aber dazu finde ich eben keine Möglichkeit, die interne Adapternummer eines bestimmten Adapters rauszukriegen. Wenn man die hat, kriegt man auch die Lanas für den Adapter und damit auch die Mac-Adresse usw.

Momentan nehme ich an, dass das über die "Ablagereihenfolge" in der Registry gelöst ist.
Unter HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Cl ass\{4D36E972-E325-11CE-BFC1-08002BE10318} stehen alle Netzwerktreiber und -adapter aufgelistet.
Dem ersten Adapter in der Liste wird die Nummer 1 zugewiesen und entsprechend weiter.
Wäre komisch, scheint aber so zu klappen.
Allerdings kann ich das leider nicht testen, weil ich keinen Zugriff auf einen Rechner mit mehreren Netzwerkadaptern habe.

Zitat:
Diese Klasse hatte ich auch nochmal angeschaut, aber keinen Wert gesehen, der so aussah. Jetzt bin ich zu Hause, da schaue ich mir die konkreten Werte mal an.
Also im Artikel "MAC-Adresse einlesen plus Bezeichnung des LAN-Adapters" in diesem Forum steht, dass das damit gelöst wurde.
Es geht ja im Prinzip nur darum, dass die Mac-Adresse eineindeutig einem Adapter zugeordnet wird. Dann geht der Rest auch, nur eben nicht über die Adapternummer. Die ergibt sich dann erst.

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.581 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Adapter und Lana?

  Alt 20. Aug 2011, 11:54
Aber gerade die undokumentierten Funktionen regen mich da so auf. Warum ärgert MS die Programmierer so? (Rhetorisch! Ich weiß, warum, aber ich finde das nicht gut!)
Was würde es dir aber bringen, wenn MS die dokumentieren würde und dann eben dazu schreiben würde "gibt es nur in Windows XP SP 3, aber nicht in SP 2 oder früher und auch nicht in Vista oder später" oder ähnliches. Viele der undokumentierten Funktionen werden schlicht immer wieder mal geändert, weshalb dann Programme, die die wider besseres Wissen (hoffentlich...) benutzt haben, nach einem Windows Update plötzlich nicht mehr funktionieren...

Allerdings kann ich das leider nicht testen, weil ich keinen Zugriff auf einen Rechner mit mehreren Netzwerkadaptern habe.
Installiere einfach z.B. VirtualBox, dann hast du einen weiteren Adapter.

Es geht ja im Prinzip nur darum, dass die Mac-Adresse eineindeutig einem Adapter zugeordnet wird.
Ich denke du brauchst die interne Adapternummer von Windows, warum auch immer. Was brauchst du denn eigentlich wirklich? Was möchtest du denn machen?
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#7

AW: Adapter und Lana?

  Alt 20. Aug 2011, 12:33
Hi,

eben! Viele undokumentierte Funktionen ändert MS, viele aber auch nicht!
Für Softwareentwickler, die sowieso systembezogen entwickeln, ist es sehr wichtig, diese Funktionen auch zu kennen. Es erleichtert ihnen oft viel Arbeit!

Was ich will, steht schon im ersten Post. Das ist immer das gleiche. Nur anders formuliert.
Zwar nicht alle, aber viele Wege führen nach Rom!
Noch mal:
Ziel ist es, jedem Adapter seine Mac-Adresse, Lanas, Eigenschaften zuzuordnen.
Dazu muss ich irgendetwas (!) haben, was den Adapter eindeutig identifiziert und die Lanas zuordnen können. (Oder den Lanas zugeordnet werden können)
Am einfachsten wäre wahrscheinlich die interne Adapternummer von Windows. Die Mac-Addresse wäre auch etwas eindeutiges, da die sich über die Lana ermitteln lässt. Wenn ich die nun noch für den speziellen Adapter rauskriegen würde, wäre es das auch.

Gruß
Mattze
  Mit Zitat antworten Zitat
bernerbaer
(Gast)

n/a Beiträge
 
#8

AW: Adapter und Lana?

  Alt 20. Aug 2011, 13:49
ungetestes Tool zu WMI, sieht aber vielversprechend aus: http://code.google.com/p/wmi-delphi-code-creator/
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#9

AW: Adapter und Lana?

  Alt 20. Aug 2011, 20:28
Hi,

sieht wirklich gut aus.
Vielen Dank!
Aber wie kriege ich das runtergeladen?

Ich finde nix.

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.581 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Adapter und Lana?

  Alt 21. Aug 2011, 06:51
Dafür klickst du in Delphi auf Datei --> Aus der Versionskontrolle öffnen...

Als Repository URL gibst du ein:
http://wmi-delphi-code-creator.googl...com/svn/trunk/

Als Ziel gibst du den Ordner auf der Festplatte ein wo das Projekt landen soll. Dann drückst du Ok, alles wird heruntergeladen, es kommt die Projektauswahl wo in diesem Fall nur eins drin steht, du drückst Ok und das Projekt ist in Delphi geöffnet. Einmal erzeugen und du hast die Exe.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz