Сообщение от
donetsk
EvLУжас выучи синтаксис в делфи
Зачем учить язык который мне совершенно не нужен, была задача , задачу решил, ты ещё повосетуй на делфях написать свой язык программирования , потом создать пару десятков компонентов для этого и свои свой компилятор.
Уважаемый плиз в студию как winsock узнает мак адрес твоей сетевой, маршрутизацию прописаную таи имя учетки и всё, что связано что нужно узнать для угога привязки к модему и лок настройкам?
Пальцы конечно можно гнуть всегда и писать суппер закодиные проги которые будет весить гекетыры и то, что они будут отсылать тоже будут Га весить...
А документ текстовый , или не текстовый создавать всё равно -это образно говориться, конечно лучьше записывать в какой -нибуть setuplog.txt c систем рута и полученную инфу кодить и отсылать закодиной с этим согласен, но всё зависит от поставленых целей!
Чтоб программы невесили много используй winAPI и забудь про VCL
а используя winsock можно получить IP...
MAC адрес можно получить так:
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 :=
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;