Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Статьи » Розробка програми &Domain name, IP& для технічного інституту

Реферат Розробка програми &Domain name, IP& для технічного інституту





tion:= IP: + inet_ntoa (PInAddr (p.h_addr_list ^) ^) ;;;

//повертає IP адресLocalIP: string;=array [0..10] of PInAddr;=^ TaPInAddr;: PHostEnt;: PaPInAddr;: array [0..63] of char;: Integer ;: TWSADATA; ($ 101, GInitData);:= raquo ;; (Buffer, SizeOf (Buffer));:=GetHostByName (buffer); phe=nil then Exit;:=PaPInAddr (Phe ^ .h_addr_list) ;: =0; pptr ^ [i] lt; gt; nil do:=StrPas (inet_ntoa (pptr ^ [i] ^)); (i) ;;;; TForm1.FormCreate (Sender: TObject) ;. Caption:= laquo ; Local IP: + LocalIP ;; TForm1.Button4Click (Sender: TObject) ;: TWSAData ;: array [0..255] of char ;: PHostEnt ;: PChar; ($ +0101, wsdata); (hostName, sizeof (hostName));(hostName,Edit4.Text);:=GetHostByName(hostName);Assigned(hostEnt)Assigned(hostEnt^.h_addr_list):=hostEnt^.h_addr_list^;Assigned(addr).Caption:=Format(laquo;%d.%d.%d.%draquo;,[byte(addr[0]),(addr[1]),byte(addr[2]),byte(addr[3])]);;;;;;TForm1.Label6DblClick(Sender: TObject) ;. Text:=Label6.Caption ;; TForm1.Label9DblClick (Sender: TObject) ;. Text:=Label9.Caption ;; IPAddrToCompName (IPAddr: string): string ;: TSockAddrIn ;: PHostEnt ;: TWSAData; ($ 101 , WSAData) ;. sin_addr.s_addr:=inet_addr (PChar (IPAddr));:=gethostbyaddr (@ SockAddrIn.sin_addr.S_addr, 4, AF_INET);HostEntlt;gt;nilResult:=StrPas(Hostent^.h_name)Result:=laquo;raquo;;;TForm1.Button5Click(Sender: TObject) ;. Caption:= Name: + IPAddrToCompName (Edit5.Text) ;; TForm1.Label11DblClick (Sender: TObject) ;. Text:=Label11.Caption ;;

//////////////////////////////////// Трафік=packed record: array [0..255] of WideChar ;: DWORD;

dwType: DWORD ;: DWORD ;: DWORD;// Визначає поточну швидкість передавання даних в секунду: DWORD ;: array [0..7] of Byte;// Містить фізичну адресу інтерфейсу (якщо простіше то його, трохи видозмінений, МАС адреса)

dwAdminStatus: DWORD ;: DWORD ;: DWORD;

dwInOctets: DWORD;// Містить кількість байт прийнятих через інтерфейс

dwInUcastPkts: DWORD ;: DWORD ;: DWORD ;: DWORD ;: DWORD ;: DWORD;// Містить кількість байт відправлених інтерфейсом: DWORD ;: DWORD ;: DWORD ;: DWORD ;: DWORD ;: DWORD ;: array [0..255] of Char;// Cодержит опис інтерфейсу;=array [0..512] of TMibIfRow;=^ TMibIfRow;=^ TMibIfArray;=packed record: DWORD ;: TMibIfArray ;;=^ TMibIfTable;: function (pIfTable: PMibIfTable; pdwSize: PULONG;:Boolean): DWORD; stdcall;

//////////////////////////////////// ІнтерфейсиWSAIoctl (s: TSocket; cmd: DWORD; lpInBuffer: PCHAR; dwInBufferLen:;: PCHAR; dwOutBufferLen: DWORD ;: LPDWORD ;: POINTER ;: POINTER): integer; stdcall; external WS2_32.DLL raquo ;; _ GET_INTERFACE_LIST=$ 4004747F; _UP=$ 00000001; _BROADCAST=$ 00000002; _LOOPBACK=$ 00000004; _POINTTOPOINT=$ 00000008; _MULTICAST=$ 00000010; _gen=packed record: sockaddr_in ;: packed array [0..7] of char ;; _ INFO=packed record: u_long;// Прапори інтерфейсу: sockaddr_gen;// Адреса інтерфейсу: sockaddr_gen;// Broadcast адреса: sockaddr_gen;// Маска підмережі; EnumInterfaces (var sInt: string): Boolean ;: TSocket ;: WSADATA ;: Integer ;: u_long ;: SOCKADDR_IN ;: PChar ;: pointer ;: array [0..20] of INTERFACE_INFO ;: integer; :=true;// Ініціалізіруем змінну:= raquo ;; ($ +0101, wsaD);// Запускаємо WinSock

//тут можна дабавіть різні обробники помилки

s:=Socket (AF_INET, SOCK_STREAM, 0);// Відкриваємо сокет (s=INVALID_SOCKET) Exit;

try//викликаємо WSAIoCtl:=@ bytesReturned;

if (WSAIoCtl (s, SIO_GET_INTERFACE_LIST, nil, 0,Buffer,

, PtrA, nil, nil) lt; gt; SOCKET_ERROR)

then//якщо OK, то визначаємо кількість існуючих інтерфейсів

NumInterfaces:=BytesReturned div SizeOf (INTERFACE_INFO); i:=0 to NumInterfaces - 1 do//для кожного інтерфейсу:=Buffer [i] .iiAddress.AddressIn;// IP адреса:=inet_ntoa (pAddrInet.sin_addr); pAddrString lt; gt; 127.0.0.1 :=sInt + IP= + pAddrString + laquo ;, + # 10 # 13;

//pAddrInet:=Buffer [i] .iiNetMask.AddressIn;// Маска підмережі

//pAddrString:=inet_ntoa (pAddrInet.sin_addr);

//sInt:=sInt + Mask= + pAddrString + , raquo ;; sInt:= IP= localhost raquo ;;;;

//;

//закриваємо сокети (s) ;;:=false ;; BytesToString (Value: integer): string;=1024;=OneKB * 1024;=OneMB * 1024; Value lt; OneKBResult:=FormatFloat ( #, ## 0.00 B , Value) Value lt; OneMBResult:=FormatFloat ( #, ## 0.00 KB raquo ;, Value/OneKB) Value lt; OneGBResult:=FormatFloat ( #, ## 0.00 MB , Value/OneMB); TForm1.Timer1Timer (Sender: TObject);

//допоміжна функція, яка перетворює МАС адреса до

// нормальному увазі визначаємо спеціальний тип, щоб

//можна було передати у функцію масив ...


Назад | сторінка 8 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Прикладне додаток &Розробка проекту для створення нового класу Auto і елеме ...
  • Реферат на тему: Phonetic peculiarities of the popular science text
  • Реферат на тему: Технології аналізу даних (Text Mining, Data Mining)
  • Реферат на тему: Grammar of the Text: its Basic Units and Main Features (based on the novel ...
  • Реферат на тему: Розробка інтерфейсу користувача для роботи з базою даних &Автомайстерня&