Also, mit diesen beiden Funktionen
Delphi-Quellcode:
Function GetTcpTable(Table: PMIB_TCPTABLE; dwSize: PDWORD; bOrder: BOOL): DWORD; stdcall; external 'iphlpapi.dll';
Function GetUdpTable(Table: PMIB_UDPTABLE; dwSize: PDWORD; bOrder: BOOL): DWORD; stdcall; external 'iphlpapi.dll';
Bekommst du alle Verbindungen, jeweils UDP und
TCP/
IP.
PMIB_TCPTABLE sieht so aus:
Delphi-Quellcode:
_MIB_TCPTABLE = packed record
dwNumEntries: DWORD;
table: Array[0..0] of MIB_TCPROW;
end;
MIB_TCPTABLE = _MIB_TCPTABLE;
PMIB_TCPTABLE = ^MIB_TCPTABLE;
So weit kapiert? Und jetzt kannst du eine Verbindung beenden, wenn du z.B.
Delphi-Quellcode:
var
TCPTable: PMIB_TCPTABLE;
//[...]
begin
//Alle TCP - Verbindungen auflisten
GetTcpTable(TCPTable,SizeOf(TCPTable),True);
//Wir schließen die Dritte Verbindung
kRow := TCPTable.Table[2];
CloseTCPConnection(kRow);
end;
das war's....