Compartir a través de


Recuperar información mediante GetTcpStatistics

La función GetTcpStatistics rellena un puntero a una estructura de MIB_TCPSTATS con información sobre las estadísticas del protocolo TCP para el equipo local.

Para usar GetTcpStatistics

  1. Declare algunas variables necesarias.

    Declare una variable dwRetValDWORD que usará para las llamadas de función de comprobación de errores. Declare un puntero a una variable de MIB_TCPSTATS denominada pTCPStats y asigne memoria para la estructura. Compruebe que se puede asignar memoria.

    DWORD dwRetVal = 0;
    PMIB_TCPSTATS pTCPStats;
    
    pTCPStats = (MIB_TCPSTATS *) malloc(sizeof (MIB_TCPSTATS));
    if (pTCPStats == NULL) {
        printf("Error allocating memory\n");
    }
    
  2. Llame a la función GetTcpStatistics con el parámetro pTCPStats para recuperar las estadísticas tcp de IPv4 en el equipo local. Compruebe si hay errores y devuelve el valor de error en la variable dwRetValDWORD . Si se produce un error, la dwRetVal variable se puede usar para la comprobación y los informes de errores más extensos.

        if ((dwRetVal = GetTcpStatistics(pTCPStats)) != NO_ERROR) {
            printf("GetTcpStatistics failed with error: %ld\n", dwRetVal);
        } 
    
  3. Si la llamada se realizó correctamente, acceda a los datos devueltos en el MIB_TCPSTATS señalado por el parámetro pTCPStats .

    printf("\tNumber of active opens:  %u\n", pTCPStats->dwActiveOpens);
    printf("\tNumber of passive opens: %u\n", pTCPStats->dwPassiveOpens);
    printf("\tNumber of segments received: %u\n", pTCPStats->dwInSegs);
    printf("\tNumber of segments transmitted: %u\n", pTCPStats->dwOutSegs);
    printf("\tNumber of total connections: %u\n", pTCPStats->dwNumConns);
    
  4. Libere la memoria asignada para la estructura de MIB_TCPSTATS a la que apunta el parámetro pTCPStats . Esto debe hacerse una vez que la aplicación ya no necesite los datos devueltos por el parámetro pTCPStats .

    if (pTCPStats)
        free(pTCPStats);
    

Paso siguiente: Recuperar información mediante GetIpStatistics

Paso anterior: Recuperar información mediante GetIpStatistics

Código fuente completo