Abrufen von Informationen mithilfe von GetTcpStatistics
Die GetTcpStatistics-Funktion füllt einen Zeiger auf eine MIB_TCPSTATS-Struktur mit Informationen zu den TCP-Protokollstatistiken für den lokalen Computer.
So verwenden Sie GetTcpStatistics
Deklarieren Sie einige erforderliche Variablen.
Deklarieren Sie eine DWORD-Variable
dwRetVal
, die für Aufrufe der Fehlerüberprüfungsfunktion verwendet wird. Deklarieren Sie einen Zeiger auf eine MIB_TCPSTATS Variable namens pTCPStats, und weisen Sie Arbeitsspeicher für die Struktur zu. Überprüfen Sie, ob Arbeitsspeicher zugewiesen werden kann.DWORD dwRetVal = 0; PMIB_TCPSTATS pTCPStats; pTCPStats = (MIB_TCPSTATS *) malloc(sizeof (MIB_TCPSTATS)); if (pTCPStats == NULL) { printf("Error allocating memory\n"); }
Rufen Sie die GetTcpStatistics-Funktion mit dem Parameter pTCPStats auf, um TCP-Statistiken für IPv4 auf dem lokalen Computer abzurufen. Suchen Sie nach Fehlern, und geben Sie den Fehlerwert in der DWORD-Variablen
dwRetVal
zurück. Wenn ein Fehler auftritt, kann diedwRetVal
Variable für eine umfassendere Fehlerüberprüfung und -berichterstellung verwendet werden.if ((dwRetVal = GetTcpStatistics(pTCPStats)) != NO_ERROR) { printf("GetTcpStatistics failed with error: %ld\n", dwRetVal); }
Wenn der Aufruf erfolgreich war, greifen Sie auf die Daten zu, die in der MIB_TCPSTATS vom pTCPStats-Parameter zurückgegeben werden.
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);
Geben Sie den Speicher frei, der für die MIB_TCPSTATS Struktur zugewiesen ist, auf die der pTCPStats-Parameter verweist. Dies sollte erfolgen, sobald die Anwendung die vom pTCPStats-Parameter zurückgegebenen Daten nicht mehr benötigt.
if (pTCPStats) free(pTCPStats);
Nächster Schritt: Abrufen von Informationen mithilfe von GetIpStatistics
Vorheriger Schritt: Abrufen von Informationen mithilfe von GetIpStatistics
Vollständiger Quellcode