AGB  ·  Datenschutz  ·  Impressum  







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

MAC-Adresse

Ein Thema von Jordan · begonnen am 30. Okt 2005 · letzter Beitrag vom 30. Okt 2005
Antwort Antwort
Jordan

Registriert seit: 30. Okt 2005
Ort: Eisenhüttenstadt
6 Beiträge
 
Delphi 6 Enterprise
 
#1

MAC-Adresse

  Alt 30. Okt 2005, 11:51
Hallo leute,

Ich hab mal ne frage.
Kann mir mal einer sagen wie ich die Netzwerkkarten auslesen kann ?? Also so das er mir die karten anzeigt, die im PC eingebaut sind (z.B in einer ComboBox). Und wie kann ich zu jeder Karte, die er mir anzeigt, die Information, wie z.B. IP, Mac-adresse in ein Memo anzeigt.

Wäre echt toll, wenn mir da jemand hilft. Ich weis, ist vielleicht ein wenig zuviel fürs erste, aber wäre echt nett.

PS: Wenn es mit der Version die ich habe nicht geht, dann könnt ihr mir ja nen link gegen, wo ich ne aktuelle verion downloaden kann (Kostenfrei wäre gut XD)

Danke im vorraus

MfG
Jordan
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: MAC-Adresse

  Alt 30. Okt 2005, 11:54
die Mac-Adressen bekommst du mit folgenden beiden funktionen:
Delphi-Quellcode:
function GetMacAddressCount: Byte;
var AdapterList: ^TLanaEnum;
    NCB: TNCB;
begin
  new(AdapterList);
  FillChar(NCB, SizeOf(NCB), 0);
  NCB.ncb_command := Char(NCBENUM);
  NCB.ncb_buffer := PChar(AdapterList);
  NCB.ncb_length := SizeOf(AdapterList^);
  Netbios(@NCB);
  Result := Byte(AdapterList.length);
  dispose(AdapterList);
end;

function GetMACAddress(ANewworkcardIndex: Byte = 0): string;
var AdapterList: TLanaEnum;
  NCB: TNCB;
begin
  FillChar(NCB, SizeOf(NCB), 0);
  AdapterList.length := char(0);
  NCB.ncb_command := Char(NCBENUM);
  NCB.ncb_buffer := @AdapterList;
  NCB.ncb_length := SizeOf(AdapterList);
  Netbios(@NCB);
  if Byte(AdapterList.length) > ANewworkcardIndex then
    Result := GetAdapterInfo(AdapterList.lana[ANewworkcardIndex])
  else
    Result := 'mac not found';
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
EDatabaseError

Registriert seit: 11. Mai 2005
Ort: Göppingen
1.238 Beiträge
 
Delphi 2007 Professional
 
#3

Re: MAC-Adresse

  Alt 30. Okt 2005, 11:55
Erste Anlaufstelle
GOOGLE
Tobias
It's not a bug, it's a feature.
  Mit Zitat antworten Zitat
Jordan

Registriert seit: 30. Okt 2005
Ort: Eisenhüttenstadt
6 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: MAC-Adresse

  Alt 30. Okt 2005, 12:06
Hallo SirThornberry

er zeigt mir das als fehler an:
Undeclared identifier: 'TLanaEnum'
Undeclared identifier: 'TNCB'

Wie kann ich es beheben ??

Vielleicht geht es ja nicht mit Delphi6

MfG
Jordan
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: MAC-Adresse

  Alt 30. Okt 2005, 12:08
du musst in den uses die unit "nb30" hinzufügen
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Jordan

Registriert seit: 30. Okt 2005
Ort: Eisenhüttenstadt
6 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: MAC-Adresse

  Alt 30. Okt 2005, 12:11
Danke, es geht

aber jetzt ist wieder neue fehlermeldung
Undeclared identifier: 'GetAdapterInfo'

Wie behebe ich das ??

MfG
Jordan
  Mit Zitat antworten Zitat
core

Registriert seit: 26. Dez 2003
Ort: Wadgassen
29 Beiträge
 
#7

Re: MAC-Adresse

  Alt 30. Okt 2005, 13:43
Versuchs mal hiemit:

Delphi-Quellcode:
uses nb30;

function GetAdapterInfo(Lana: Char): string;
var
  Adapter: TAdapterStatus;
  NCB: TNCB;
begin
  FillChar(NCB, SizeOf(NCB), 0);
  NCB.ncb_command := Char(NCBRESET);
  NCB.ncb_lana_num := Lana;
  if Netbios(@NCB) <> Char(NRC_GOODRET) then
  begin
    Result := 'mac not found';
    Exit;
  end;

  FillChar(NCB, SizeOf(NCB), 0);
  NCB.ncb_command := Char(NCBASTAT);
  NCB.ncb_lana_num := Lana;
  NCB.ncb_callname := '*';

  FillChar(Adapter, SizeOf(Adapter), 0);
  NCB.ncb_buffer := @Adapter;
  NCB.ncb_length := SizeOf(Adapter);
  if Netbios(@NCB) <> Char(NRC_GOODRET) then
  begin
    Result := 'mac not found';
    Exit;
  end;
  Result :=
    Format('%X', [Byte(Adapter.adapter_address[0])]) + '-' +
  Format('%X', [Byte(Adapter.adapter_address[1])]) + '-' +
  Format('%X', [Byte(Adapter.adapter_address[2])]) + '-' +
  Format('%X', [Byte(Adapter.adapter_address[3])]) + '-' +
  Format('%X', [Byte(Adapter.adapter_address[4])]) + '-' +
  Format('%X', [Byte(Adapter.adapter_address[5])]);
end;

function GetMACAddress: string;
var
  AdapterList: TLanaEnum;
  NCB: TNCB;
begin
  FillChar(NCB, SizeOf(NCB), 0);
  NCB.ncb_command := Char(NCBENUM);
  NCB.ncb_buffer := @AdapterList;
  NCB.ncb_length := SizeOf(AdapterList);
  Netbios(@NCB);
  if Byte(AdapterList.length) > 0 then
    Result := GetAdapterInfo(AdapterList.lana[0])
  else
    Result := 'mac not found';
end;
Das ganze ist aus Luckies NetWorkInfo (Link) Quelltext!!
  Mit Zitat antworten Zitat
Jordan

Registriert seit: 30. Okt 2005
Ort: Eisenhüttenstadt
6 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: MAC-Adresse

  Alt 30. Okt 2005, 15:04
Danke dir

Das hilft mir weiter

MfG
Jordan
  Mit Zitat antworten Zitat
Antwort Antwort


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:40 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