共用方式為


getIcmpStatistics 函式 (iphlpapi.h)

GetIcmpStatistics 函式會擷取本機計算機的 IPv4 統計數據的 Internet Control Message Protocol (ICMP) 。

語法

IPHLPAPI_DLL_LINKAGE ULONG GetIcmpStatistics(
  [out] PMIB_ICMP Statistics
);

參數

[out] Statistics

接收本機電腦ICMP統計數據 之MIB_ICMP 結構的指標。

傳回值

如果函式成功,傳回值會NO_ERROR。

如果函式失敗,傳回值就是下列其中一個錯誤碼。

傳回碼 Description
ERROR_INVALID_PARAMETER
pStats 參數為 NULL,或 GetIcmpStatistics 無法寫入 pStats 參數所指向的記憶體。
其他
使用 FormatMessage 函式來取得傳回錯誤的訊息字串。

備註

GetIcmpStatistics 函式會傳回本機電腦上的 IPv4 ICMP 統計數據。 在 Windows XP 和更新版本上, GetIpStatisticsEx 可用來取得本機電腦上的 IPv4 或 IPv6 的 ICMP 統計數據。

範例

下列範例會擷取本機計算機的IPv4統計數據ICMP,並從傳回的數據列印一些資訊。

#ifndef UNICODE
#define UNICODE
#endif

#include <winsock2.h>
#include <ws2tcpip.h>
#include <iphlpapi.h>
#include <stdio.h>

#pragma comment(lib, "iphlpapi.lib")

#define MALLOC(x) HeapAlloc(GetProcessHeap(), 0, (x))
#define FREE(x) HeapFree(GetProcessHeap(), 0, (x))

/* Note: could also use malloc() and free() */

int main()
{

    DWORD dwRetVal = 0;
    PMIB_ICMP pIcmpStats;

    pIcmpStats = (MIB_ICMP *) MALLOC(sizeof (MIB_ICMP));
    if (pIcmpStats == NULL) {
        wprintf(L"Error allocating memory\n");
        return 1;
    }

    dwRetVal = GetIcmpStatistics(pIcmpStats);
    if (dwRetVal == NO_ERROR) {
        wprintf(L"Number of incoming ICMP messages: %ld\n",
                pIcmpStats->stats.icmpInStats.dwMsgs);
        wprintf(L"Number of incoming ICMP errors received: %ld\n",
                pIcmpStats->stats.icmpInStats.dwErrors);
        wprintf(L"Number of outgoing ICMP messages: %ld\n",
                pIcmpStats->stats.icmpOutStats.dwMsgs);
        wprintf(L"Number of outgoing ICMP errors sent: %ld\n",
                pIcmpStats->stats.icmpOutStats.dwErrors);
    } else {
        wprintf(L"GetIcmpStatistics failed with error: %ld\n", dwRetVal);
    }

    if (pIcmpStats)
        FREE(pIcmpStats);

    return 0;
}

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 iphlpapi.h
程式庫 Iphlpapi.lib
Dll Iphlpapi.dll

另請參閱

GetIpStatistics

GetIpStatisticsEx

GetTcpStatistics

GetUdpStatistics

IP 協助程式函式參考

IP 協助程式起始頁

MIB_ICMP