NETSTAT.EXE用於顯示計算機上的TCP連接表,UDP監聽者表,IP協議統計
獲取TCP連接表
利用GetTcpTable函數可以獲得TCP連接表。獲得的信息和帶上-p tcp -a執行NETSTAT.EXE程序時看到的信息一樣:
- DWORD WINAPI GetTcpTable(
- __out PMIB_TCPTABLE pTcpTable,
- __in_out PDWORD pdwSize,
- __in BOOL bOrder
- );
pTcpTable是一個指針,指向一個MIB_TCPTABLE緩衝區,該緩衝區接收TCP連接信息
pdwSize是一個變量指針,指定傳遞到pTcpTable參數中緩衝區的長度,如果提供的長度容納不下TCP連接信息,函數就會把這個參數設置爲合適的緩衝區長度,bOrder指定是否對返回信息進行分類
- typedef struct _MIB_TCPTABLE {
- DWORD dwNumEntries;
- MIB_TCPROW table[ANY_SIZE];
- } MIB_TCPTABLE, *PMIB_TCPTABLE;
獲得UDP監聽者表
利用GetUdpTable可以獲得UDP監聽者表:
- DWORD GetUdpTable(
- __out PMIB_UDPTABLE pUdpTable,
- __in_out PDWORD pdwSize,
- __in BOOL bOrder
- );
pUdpTable是一個指針,指向一個MIB_UDPTABLE緩衝區,該緩衝區接收UDP連接信息
pdwSize是一個變量指針,指定傳遞到pUdpTable參數中緩衝區的長度,如果提供的長度容納不下UDP連接信息,函數就會把這個參數設置爲合適的緩衝區長度,bOrder指定是否對返回信息進行分類
- typedef struct _MIB_UDPTABLE {
- DWORD dwNumEntries;
- MIB_UDPROW table[ANY_SIZE];
- } MIB_UDPTABLE, *PMIB_UDPTABLE;