다음을 통해 공유


GetTcpStatistics를 사용하여 정보 검색

GetTcpStatistics 함수는 로컬 컴퓨터의 TCP 프로토콜 통계에 대한 정보로 MIB_TCPSTATS 구조체에 대한 포인터를 채웁니다.

GetTcpStatistics를 사용하려면

  1. 필요한 일부 변수를 선언합니다.

    오류 검사 함수 호출에 사용할 DWORD 변수 dwRetVal 를 선언합니다. pTCPStats라는 MIB_TCPSTATS 변수에 대한 포인터를 선언하고 구조체에 대한 메모리를 할당합니다. 메모리를 할당할 수 있는지 확인합니다.

    DWORD dwRetVal = 0;
    PMIB_TCPSTATS pTCPStats;
    
    pTCPStats = (MIB_TCPSTATS *) malloc(sizeof (MIB_TCPSTATS));
    if (pTCPStats == NULL) {
        printf("Error allocating memory\n");
    }
    
  2. pTCPStats 매개 변수를 사용하여 GetTcpStatistics 함수를 호출하여 로컬 컴퓨터에서 IPv4에 대한 TCP 통계를 검색합니다. 오류를 확인하고 DWORD 변수 dwRetVal에서 오류 값을 반환합니다. 오류가 발생하면 변수를 dwRetVal 사용하여 보다 광범위한 오류 검사 및 보고를 수행할 수 있습니다.

        if ((dwRetVal = GetTcpStatistics(pTCPStats)) != NO_ERROR) {
            printf("GetTcpStatistics failed with error: %ld\n", dwRetVal);
        } 
    
  3. 호출에 성공하면 pTCPStats 매개 변수가 가리키는 MIB_TCPSTATS 반환된 데이터에 액세스합니다.

    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. pTCPStats 매개 변수가 가리키는 MIB_TCPSTATS 구조체에 할당된 메모리를 해제합니다. 애플리케이션에 pTCPStats 매개 변수에서 반환된 데이터가 더 이상 필요하지 않은 경우 이 작업을 수행해야 합니다.

    if (pTCPStats)
        free(pTCPStats);
    

다음 단계: GetIpStatistics를 사용하여 정보 검색

이전 단계: GetIpStatistics를 사용하여 정보 검색

전체 소스 코드