![]() |
![]() ![]() ![]() ![]() |
|
Как оперделить все 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 | ||||