Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Traffic auslesen (https://www.delphipraxis.net/120081-traffic-auslesen.html)

XXcD 5. Sep 2008 13:18


Traffic auslesen
 
Hallo,
kennt einer von euch eine möglichkeit mit Delphi den Traffic auszulesen, der über die Netzwerkkarte geht?

Ich habe hier etwas gefunden: http://delphi.about.com/od/fullcodep.../aa112903a.htm
Leider wird dort nur der Traffic ausgelesen der seid dem Programmstart entstand.

Ih besitze von AlphaCool ein Display und in diesem Programm wird der gesamte Traffic seid dem Rechner start angezeigt.
Wie mache ich das?

Phoenix 5. Sep 2008 13:21

Re: Traffic auslesen
 
Ich glaube das geht, in dem Du die PerformanceCounter des Systems abfragst.

XXcD 5. Sep 2008 14:55

Re: Traffic auslesen
 
Das gibt es doch nur in .NET oder?

Luckie 5. Sep 2008 15:03

Re: Traffic auslesen
 
Der Performance Counter ist ein Teil von Wiondows.

XXcD 5. Sep 2008 15:08

Re: Traffic auslesen
 
Woher wisst ihr alle soviel?
Ich habe bisher nur gelesen, dass man in .NET systm.diagnostics.performancecounter verwenden kann.
Wie nutze ich das in Delphi?

Die Muhkuh 5. Sep 2008 15:09

Re: Traffic auslesen
 
QueryPerformanceCounter

XXcD 5. Sep 2008 15:11

Re: Traffic auslesen
 
Jetzt verstehe ich garnichts mehr. QueryPerformanceCounter gibt doch einfach nur die Zeit aus.

Die Muhkuh 5. Sep 2008 15:12

Re: Traffic auslesen
 
Sorry, mein Fehler. Ich hatte nur PerformanceCounter gelesen. :oops:

littleDave 9. Sep 2008 12:23

Re: Traffic auslesen
 
Hallo

in dem Programm aus dem ersten Post kannst du auch schon den Netzwerk-Traffic auslesen, der seit dem wirklichen Start (nicht erst seit dem Programmstart) angefallen ist. Dafür musst du aber den Quelltext etwas anpassen:

Öffne die Datei TrafficUnit.pas und gehe zur Zeile 144. Dort steht folgendes:
Delphi-Quellcode:
  FActiveCountIn := 0;
  FActiveCountOut:= 0;
  FInTotal := 0;
  FOutTotal:= 0;
  FInPerSec:= 0;
  FOutPerSec:= 0;
  FPeakInPerSec := 0;
  FPeakOutPerSec:=0;
Dies ersetzt du durch folgendes:
Delphi-Quellcode:
  FActiveCountIn := 0;
  FActiveCountOut:= 0;
  FInTotal := AMibIfRow.dwInOctets;
  FOutTotal:= AMibIfRow.dwOutOctets;
  FInPerSec:= 0;
  FOutPerSec:= 0;
  FPeakInPerSec := 0;
  FPeakOutPerSec:=0;
Fertig :D


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz