Compartir a través de


Recuperar información mediante GetIpStatistics

La función GetIpStatistics rellena un puntero a una estructura de MIB_IPSTATS con información sobre las estadísticas de IP actuales asociadas al sistema.

Para usar GetIpStatistics

  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_IPSTATS denominada pStats y asigne memoria para la estructura. Compruebe que se puede asignar memoria.

    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. Llame a la función GetIpStatistics con el parámetro pStats para recuperar las estadísticas de IP del 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.

    dwRetVal = GetIpStatistics(pStats);
    if (dwRetVal != NO_ERROR) {
        printf("GetIpStatistics call failed with %d\n", dwRetVal);
    }
    
  3. Si la llamada a GetIpStatistics se realizó correctamente, imprima algunos de los datos de la estructura MIB_IPSTATS a la que apunta el parámetro pStats .

    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. Libere la memoria asignada para la estructura de MIB_IPSTATS a la que apunta el parámetro pStats . Esto debe hacerse una vez que la aplicación ya no necesite los datos devueltos por el parámetro pStats .

    if (pStats)
        free(pStats);
    

Paso siguiente: Recuperar información mediante GetTcpStatistics

Paso anterior: Administrar direcciones IP mediante AddIPAddress y DeleteIPAddress