共用方式為


使用 GetIpStatistics 擷取資訊

GetIpStatistics函式會填入MIB_IPSTATS結構的指標,其中包含與系統相關聯之目前 IP 統計資料的相關資訊。

使用 GetIpStatistics

  1. 宣告一些所需的變數。

    宣告將用於錯誤檢查函式呼叫的 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");
    }
    
  2. 使用pStats參數呼叫GetIpStatistics函式,以擷取本機電腦的 IP 統計資料。 檢查錯誤,並傳回 DWORD 變數 dwRetval 中的錯誤值。 如果發生錯誤, dwRetval 變數可用於更廣泛的錯誤檢查和報告。

    dwRetVal = GetIpStatistics(pStats);
    if (dwRetVal != NO_ERROR) {
        printf("GetIpStatistics call failed with %d\n", dwRetVal);
    }
    
  3. 如果呼叫 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);
    
  4. 釋放為pStats參數所指向之MIB_IPSTATS結構配置的記憶體。 一旦應用程式不再需要 pStats 參數所傳回的資料,就應該這麼做。

    if (pStats)
        free(pStats);
    

下一個步驟: 使用 GetTcpStatistics 擷取資訊

上一個步驟: 使用 AddIPAddress 和 DeleteIPAddress 管理 IP 位址