Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ошибка при определении MAC-адреса [D5, Win2k]


idef ©   (2002-06-19 16:10:00) 

Скачал я исходники MiTeC System Information Component
Выковырял оттуда определение MAC-адреса, поцепил на форму поля.
Все работает.
Потом перенес все в свой проект, а там не работает.
Функция NbLanaEnum возвращает код ошибки $07 illegal buffer address.
Что можно сделать?
Код функции:
function NbLanaEnum: TLana_Enum;
var
NCB: TNCB;
L_Enum: TLana_Enum;
RetCode: Word;
begin
{$IFDEF WIN32}
FillChar(NCB, SizeOf(NCB),0);
FillChar(L_Enum, SizeOf(TLana_Enum),0);
NCB.Command:=NCB_ENUM;
NCB.Buf:=@L_Enum;
NCB.Length:=Sizeof(L_Enum);
RetCode:=NetBiosCmd(NCB);
if RetCode<>NRC_GOODRET then begin
L_Enum.Length:=0;
L_Enum.Lana[0]:=Byte(RetCode);
end;
{$ELSE}
L_Enum.Length:=1;
L_Enum.Lana[0]:=0;
{$ENDIF}
Result:=L_Enum;
end;


idef   (2002-06-19 16:45:00) [1]

Все оказалось очень просто.
Надо было включить Optimization в опциях компилятора.
Всем спасибо.


Наверх

Титульная страница Поиск, карта сайта Написать письмо