![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Как оперделить все IP и порты на моем компьютереDelphi , Интернет и Сети , TCP/IP
Автор: Spawn Функции GetTcpTable, GetUdpTable. Импорт GetTcpTable: unit TcpTable; interface type PDWord = ^Longword; PMIB_TCPROW = ^TMIB_TCPROW; TMIB_TCPROW = record dwState: LongWord; dwLocalAddr: LongWord; dwLocalPort: LongWord; dwRemoteAddr: LongWord; dwRemotePort: LongWord; end; PMIB_TCPTABLE = ^TMIB_TCPTABLE; TMIB_TCPTABLE = record dwNumEntries: LongWord; table: array[0..0] of TMIB_TCPROW; end; function GetTcpTable(var TcpTable: PMIB_TCPTABLE; var Size: PDWord; bOrder: Boolean): LongWord; stdcall implementation function GetTcpTable; external 'Iphlpapi.dll' name 'GetTcpTable'; end. Вызов GetTcpTable: {$R-} Entries := 16; Sz := SizeOf(TMIB_TCPTABLE) + SizeOf(TMIB_TCPROW) * (Entries - 1); pMibTable := nil; try repeat ReallocMem(pMibTable, Sz); Res := GetTcpTable(pMibTable^, Sz, False); until Res <> ERROR_INSUFFICIENT_BUFFER; if Res <> NO_ERROR then begin ShowMessage(SysErrorMessage(Res)); exit; end; for Entries := 0 to pMibTable.dwNumEntries - 1 do begin < Делать что - то > end; finally FreeMem(pMibTable); end; {$R+} Вот перевод текста на русский язык: Это фрагмент кода Delphi, использующий функцию
Чтобы использовать этот код, вам нужно:
Вот пример, как можно модифицировать код для печати всех IP-адресов и портов:
Это будет печатать локальный и удаленный IP-адреса и порты для каждого TCP-соединения. Обратите внимание, что это только простой пример, и вам может потребоваться добавить более ошибок или фильтрации в зависимости от вашего конкретного требования. Также помните, что этот код только получает информацию о TCP-соединениях. Если вы также хотите получить информацию о UDP-соединениях, вам нужно использовать функцию Определить все IP и порты на компьютере можно с помощью функций GetTcpTable и GetUdpTable, которые возвращают информацию о состоянии сокетов и таблицах TCP/IP. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |