Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

При отключении компа от хаба/свитча, не прочитывается MAC   Найти похожие ветки 

 
Akim2   (2003-08-29 16:47) [0]

Хелп плиз subj. Для чтения использую NetBios


 
Vlad Oshin ©   (2003-08-29 17:30) [1]


> Akim2 (29.08.03 16:47)

как делаешь?


 
Akim2   (2003-08-29 17:50) [2]

Пример взят с Source.ru.

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 :=
IntToHex(Byte(Adapter.adapter_address[0]), 2) + "-" +
IntToHex(Byte(Adapter.adapter_address[1]), 2) + "-" +
IntToHex(Byte(Adapter.adapter_address[2]), 2) + "-" +
IntToHex(Byte(Adapter.adapter_address[3]), 2) + "-" +
IntToHex(Byte(Adapter.adapter_address[4]), 2) + "-" +
IntToHex(Byte(Adapter.adapter_address[5]), 2);
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;



Страницы: 1 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.063 c
3-40865
ec
2003-10-20 18:27
2003.11.13
Filter с * что то не работает


3-40989
virusfil
2003-10-15 03:44
2003.11.13
DBGrid & Hint


1-41349
Ganjo
2003-10-30 18:23
2003.11.13
Компонет Edit: Как запретить ввод буквенных символов


1-41259
GIL
2003-10-31 16:45
2003.11.13
пишет ошибку присвоения


1-41277
.0.
2003-10-31 14:30
2003.11.13
как сделать чтобы функция вернула не одно ,а несколько значений с