Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Down/Upload herausbekommen (https://www.delphipraxis.net/77739-down-upload-herausbekommen.html)

xZise 27. Sep 2006 18:07

Re: Down/Upload herausbekommen
 
Genau... Das dachte ich auch (hatte bei dsdt schon vorher gesucht und verworfen), aber als es dann hier viel.

So en Programm könnte von Luckie sein, allerdings blick ich durch den QT nicht durch. (Bsonders eine Form ohne dfm... o.O)

DGL-luke 27. Sep 2006 18:14

Re: Down/Upload herausbekommen
 
vielleicht wissen ja die Schweizer was? such einfach mal n bisschen ;-)

xZise 27. Sep 2006 19:19

Re: Down/Upload herausbekommen
 
Also ich habe den Thread gefunden... Allerdings habe ich mit den Codeschnipsel Probleme, weil die in mBits sein müssten ^^ (ich meine ein kleines m ^^).... Vielleicht hat da jemand eine Idee... Und bei den Schweizern, habe ich das Problem, dass er das Suchwort "traffic" net findet... Oder ich suche falsch :D

DGL-luke 29. Sep 2006 13:48

Re: Down/Upload herausbekommen
 
ich bitte dich...

1 Bit = 1/8 Byte

Und ein MilliBit (oder meinst du Mikrobit?) solltest du wohl auch noch ausrechnen können.

xZise 29. Sep 2006 14:00

Re: Down/Upload herausbekommen
 
Du verstehst das Problem nicht:
Rein technisch gesehen kann es keinen kleineren Platzbedarf als 1 Bit geben.

Und das umzurechnen ist nicht das Problem. Wo das Problem ist, sind die Zahlen! Die sind viel zu hoch.

PS: Mikro wird mit dem zeichen beim "m" abgekürzt. (Wikipedia)

DGL-luke 29. Sep 2006 14:40

Re: Down/Upload herausbekommen
 
öhm... äh... lol?

Warum willst dus dann in millibits haben?

EDIT: Ich weiß, dass man Mikro mit einem "mü" abkürzt...

xZise 29. Sep 2006 18:21

Re: Down/Upload herausbekommen
 
o.O Falsch verstanden ^^
Ich habe den Code genommen (Link)! Problem: Der Wert war so groooooooooooß, dass es Millibits sein müssten. Da man aber nicht Millibits messen kann, kann das Ergebnis nicht sein.

Hier mein Code:
Delphi-Quellcode:
function TForm1.getTraffic(Networkcard : Integer) : TTraffic;
var
// der andere
  MibRow: TMibIfRow;
  IntfTable: PMibIfTable;
  Size: DWORD;
// Luckie
  IfTable: PMIB_IFTABLE;
  dwSize: Cardinal;
// alle
  i: Integer;
begin
  Result[0] := 0;
  Result[1] := 0;
  (*Size := 0;
  if GetIfTable(nil, Size, True) <> ERROR_INSUFFICIENT_BUFFER then
    Exit;
  IntfTable := AllocMem(Size);
  try
    if GetIfTable(IntfTable, Size, True) = NO_ERROR then
    begin
      for I := 0 to IntfTable^.dwNumEntries - 1 do
      begin
        {$R-}
        MibRow := IntfTable.Table[I];
        {$R+}
        if MibRow.dwType <> MIB_IF_TYPE_ETHERNET then
          Continue; // oder MIB_IF_TYPE_PPP
        if i = Networkcard then begin // Welche Verbindung

          Result[0] := MibRow.dwInOctets;
          Result[1] := MibRow.dwOutOctets;
        end;
      end;
    end;


  finally
    FreeMem(IntfTable);
  end;*)

  IfTable := nil;
  dwSize := 0;
  ZeroMemory(@IfTable, sizeof(IfTable));
  try
    VVGetIfTable(IfTable, dwSize, TRUE);
    if IfTable <> nil then
    begin
      for i := 0 to IfTable.dwNumEntries - 1 do
      begin
        if IfTable.table[i].dwType <> MIB_IF_TYPE_LOOPBACK then begin
          Result[0] := IfTable.table[i].dwInOctets;
          Result[1] := IfTable.table[i].dwOutOctets;
        end;
      end;
    end;
  finally
    Freemem(IfTable);
  end;
end;
Und das bekomme ich:
Zitat:

-1066368571
221048498
Der Ergäben in MBit:
Zitat:

-1016,96831798553466796875 MBit/s
210,8082752227783203125 MBit/s
Und dann bin ich mit 11 MBit/s (WLAN) bzw. 3 MBit/s (Internet) drinne...?

hoika 29. Sep 2006 18:36

Re: Down/Upload herausbekommen
 
Hallo,

http://delphi.about.com/od/fullcodep.../aa112903a.htm

ist ein Delphi-Programm incl. Quellcode.


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 Uhr.
Seite 3 von 3     123   

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