KB/s bei Datei Upload

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

KB/s bei Datei Upload

Beitrag von Joel »

Ich möchte in meinem Programm die "KB/Sekunde" anzeigen. Also wie schnell die Datei hochgalden wird. Die Angebe soll jede 0.7 Sekunden aktualisiert werden.

Wie mach ich das?
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
Bisonte
Beiträge: 2468
Registriert: 01.04.2007 20:18

Beitrag von Bisonte »

bei PureArea.net gabs dafür ein Codeschnipsel.

Eine Ganze Userlib rund um FTP als Quellcode.

Dort mal bei FTP Upload schauen.

http://www.purearea.net/pb/CodeArchiv/I ... ib_Code.pb
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

lol, den Code versteh ich nicht!

Code: Alles auswählen

Procedure.l FTP_UploadFile(ConnectionID, SFile.s, DFile.s) 
  If ConnectionID 
    SendNetworkString2(ConnectionID, "TYPE I"+EOL) 
    Text.s = Wait(ConnectionID, 5000) 
    If Left(Text, 3) = "200" 
    SendNetworkString2(ConnectionID, "PASV"+EOL) 
    Text.s = Wait(ConnectionID, 5000) 
    If Left(Text, 3) = "227" 
      Passive = OpenNetworkConnection(PassiveIP(Text.s), PassivePort(Text.s)) 
      If Passive 
        SendNetworkString2(ConnectionID, "STOR "+DFile+EOL) 
        Delay(100) 
        Text.s = Wait(ConnectionID, 5000) 
        If Left(Text, 3) = "150" 
          *Buffer = AllocateMemory(FileSize(SFile)) 
          SetGadgetState(#PROGRESS, 25) 
          WindowEvent() 
          If ReadFile(0, SFile) 
            ReadData(0, *Buffer, FileSize(SFile)) 
            CloseFile(0) 
            SetGadgetState(#PROGRESS, 50) 
            WindowEvent() 
          EndIf 
          SendNetworkData(Passive, *Buffer, FileSize(SFile)) 
          SetGadgetState(#PROGRESS, 75) 
          WindowEvent() 
          FreeMemory(*Buffer) 
          CloseNetworkConnection(Passive) 
          SetGadgetState(#PROGRESS, 100) 
          WindowEvent() 
          Text.s = Wait(ConnectionID, 5000) 
          WindowEvent() 
          ProcedureReturn 1 
        EndIf 
        CloseNetworkConnection(Passive) 
      EndIf 
    EndIf 
    EndIf 
  EndIf 
EndProcedure 
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Joel hat geschrieben:lol, den Code versteh ich nicht!
und nun? Der Code liegt Dir ja vor und niemand hindert Dich, dass Du jetzt
ein wenig Eigeninitiative zeigst und versuchst ihn zu verstehen. Zu jedem
unbekannten Befehl gibt die PB-Hilfe Auskunft.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Was heißt bei dieser Funktion das DFile.s?

Code: Alles auswählen

FTP_UploadFile(ConnectionID, SFile.s, DFile.s)

Habe den Befehl so gemacht:

Code: Alles auswählen

FTP_UploadFile(1, "C:\b.htm", "b.htm")
Ist das richtig?
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Joel hat geschrieben:

Code: Alles auswählen

FTP_UploadFile(ConnectionID, SFile.s, DFile.s)
ich würde davon ausgehen, dass 'S' für Source und 'D' für Destination steht.
Wo hast Du denn den Codeschnippsel her?

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Bisonte
Beiträge: 2468
Registriert: 01.04.2007 20:18

Beitrag von Bisonte »

der ist aus dem Code von Pureareanet... den ich oben gepostet hab.

Das soll eine FTP Userlib sein... der Sourcecode davon... hab ihn allerdings nicht getestet...

Hatte hier im Forum allerdings auch schonmal einen Codeschnipsel bezüglich Upload und KB/s per Progressbar gesehen, find den bloss nicht wieder...
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Keine eine Idee?
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
PMV
Beiträge: 2765
Registriert: 29.08.2004 13:59
Wohnort: Baden-Württemberg

Beitrag von PMV »

Die FTP-Lib von PB funktioniert nicht?
Probier mal die aktuelle 4.30 Beta 5 :D
Ich denke damit wirst du eher klar kommen, wenns mit deinem Server
arbeitet.

MFG PMV
alte Projekte:
TSE, CWL, Chatsystem, GameMaker, AI-Game DLL, Fileparser, usw. -.-
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Doch, die Funktioniert, aber ich weiß nicht, wie ich dei KB/s (jede Sekunde aktualisiert) anzeigen soll
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Antworten