使用 GetIpStatistics 擷取資訊
GetIpStatistics函式會填入MIB_IPSTATS結構的指標,其中包含與系統相關聯之目前 IP 統計資料的相關資訊。
使用 GetIpStatistics
宣告一些所需的變數。
宣告將用於錯誤檢查函式呼叫的 DWORD 變數
dwRetval
。 宣告名為pStats的MIB_IPSTATS變數指標,並為 結構配置記憶體。 檢查是否可以配置記憶體。MIB_IPSTATS *pStats; DWORD dwRetVal = 0; pStats = (MIB_IPSTATS*) malloc(sizeof(MIB_IPSTATS)); if (pStats == NULL) { printf("Unable to allocate memory for MIB_IPSTATS\n"); }
使用pStats參數呼叫GetIpStatistics函式,以擷取本機電腦的 IP 統計資料。 檢查錯誤,並傳回 DWORD 變數
dwRetval
中的錯誤值。 如果發生錯誤,dwRetval
變數可用於更廣泛的錯誤檢查和報告。dwRetVal = GetIpStatistics(pStats); if (dwRetVal != NO_ERROR) { printf("GetIpStatistics call failed with %d\n", dwRetVal); }
如果呼叫 GetIpStatistics成功,請列印pStats參數所指向之MIB_IPSTATS結構中的部分資料。
printf("Number of interfaces: %ld\n", pStats->dwNumIf); printf("Number of IP addresses: %ld\n", pStats->dwNumAddr); printf("Number of received datagrams: %ld\n", pStats->dwInReceives); printf("NUmber of outgoing datagrams requested to transmit: %ld\n", pStats->dwOutRequests);
釋放為pStats參數所指向之MIB_IPSTATS結構配置的記憶體。 一旦應用程式不再需要 pStats 參數所傳回的資料,就應該這麼做。
if (pStats) free(pStats);
下一個步驟: 使用 GetTcpStatistics 擷取資訊
上一個步驟: 使用 AddIPAddress 和 DeleteIPAddress 管理 IP 位址