begin process at 2010 02 10 08:14:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

API

 > 

Ecrire sur FTP en envoyant les infos par paquet afin de pouvoir gérer une progress bar ??


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ecrire sur FTP en envoyant les infos par paquet afin de pouvoir gérer une progress bar ??

lundi 23 décembre 2002 à 14:51:42 | Ecrire sur FTP en envoyant les infos par paquet afin de pouvoir gérer une progress bar ??

childr3n

Salut,

Via un logiciel, je recupere et ecris des fichiers sur un serveur FTP ...

En utilisant les API, j'arrive a gerer une progressbar lorsque je recupere les fichiers en utilisant FTPFindFirstFile puis InternetReadFile ...
J'aimerai faire la meme chose lorsque j'ecris sur le FTP
Je n'ai trouvé que l'API FTPPutFile, mais cette API ne permet pas d'envoyer le fichier en "paquets", il m'est donc impossible de gerer correctement ma progressbar !!

Qqn connait il une astuce ? d'autres APIS ?

Je joins qd meme un bout de mon code (que j'ai allégé, j'espere qu'il marchera tjs) pour ceux qui serait interessé sur la reception FTP, ou pour ceux qui ne voient pas trop de quoi je parle

Merci d'avance ...



' Variables
Public Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FILETIME
ftLastAccessTime As FILETIME
ftLastWriteTime As FILETIME
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String * 14
End Type

' Fonction de lecture FTP avec progressbar
Public Sub FTP_Read()

Dim FTP_INFOS As WIN32_FIND_DATA
Dim APrendre As Long
Dim DejaPris As Long
Dim Buffer As String * 1024
Dim BufferReturned As Long
Dim lresult As Long
Dim PartFile As String

hOpen = InternetOpen("Accès au serveur FTP", INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)

' Première connection avec InternetConnect afin de recuperer la taille du fichier (en octets) et le stocker dans APrendre
hConnection = InternetConnect(hOpen, "Serveur.FTP", INTERNET_DEFAULT_FTP_PORT, "Login", "PassWord", INTERNET_SERVICE_FTP, IIf(PassiveConnection, INTERNET_FLAG_PASSIVE, 0), 0)

FtpFindFirstFile hConnection, "Fichier que l'on souhaite lire", FTP_INFOS, 0, 0
APrendre = FTP_MOTUS_INFOS.nFileSizeLow

' 2eme connexion, mais avec InternetOpenURL cette fois ci
hConnection = InternetOpenUrl(hOpen, "ftp://Login:PassWord@ServeurFTP/.../.../Fichier.txt", vbNullString, 0, INTERNET_FLAG_NO_CACHE_WRITE, 0)

' Ensuite, j'envoi le fichier par "paquets" de 1024 octets dans une boucle InternetReadFile

Open "C:\TEST.TXT" For Binary As #1
Do
lresult = InternetReadFile(hConnection, Buffer, 1024, BufferReturned)
PartFile = Mid(Buffer, 1, BufferReturned)
Put #1, , PartFile

DejaPris = DejaPris + BufferReturned
MainForm.ProgressBar.Value = (DejaPris * 100) / APrendre

' PBLabel est un champ Label situé au dessus de la progress bar et qui affiche ou en est le téléchargement
MainForm.PBLabel = "Téléchargement en cours" & _
" (" & DejaPris & " / " & APrendre & " octets)"

MainForm.PBLabel.Refresh

Loop Until BufferReturned = 0
Close #1

' Je ferme les connexions
InternetCloseHandle hConnection
InternetCloseHandle hOpen

End Sub


Voila j'espere que ce code sera utile a certains et permettra a d'autre de m'aider a trouver une solution sur l'upload : )

A+, Nico.


Cette discussion est classée dans : fichier, long, ftp, infos, aprendre


Répondre à ce message

Sujets en rapport avec ce message

[excel] Envoie fichier ouvert par ftp [ par didrocks ] Bonjour tout le monde!J'aimerais qu'à chaque enregistrement de mon fichier excel (enregistré dans un répertoire temporaire), celui-ci s'envoie par ftp Envoie fichier sur ftp par api [ par moi4975 ] Voila je voudrais envoyer un fichier texte sur un ftp mais je n'y arrive pas; le fichier n'arrive jamis sur mon ftp.Pouvez-vous jetter un coup d'oeil  FtpOpenFile et FtpGetFileSize [ par Phalalis ] Bon les gens, j'ai un souci et ca fait 6 h que jsuis dessus. Jcommence a peter un plomb.Bon j'ai une fonction de telechargement qui utilise les api po Changer l'attribut d'un fichier via access sous FTP [ par rracha ] Je dépose un fichier sur un serveur ftp via access sans soucis. Le seul hic est que je veux modifier les attributs du fichier tjs via access par défau [download ftp] comment recuperer mes donnees apres un RETR ? [ par floxone ] Salut,J'ai un probleme avec les fonctions ftp. J'ai fait un petit client ftp pour aller recupérer un fichier en ftp.Pour l'instant, j'ai fait mes comm télécharger un fichier exe sur http et/ou sur ftp [ par spliceh ] bonjour, je cherche un code pour télécharger un fichier exe sur internet et le stocker sur ma machine. j'ai cru voir dans le forum winsock et inet mai client ftp avec winsock : pb pour rapatrier des .zip ! [ par floxone ] Salut,Je suis en train d'essayer d'apprendre l'usage de .net avec les différents tuto que je trouve. Pour l'heure, j'essaye de faire un petit client f [download ftp] comment recuperer mes donnees apres un RETR ? [ par floxone ] Salut,J'ai un probleme avec les fonctions ftp. J'ai fait un petit client ftp pour aller recupérer un fichier en ftp.Pour l'instant, j'ai fait mes comm List Ftp Dossier/Fichier ?? [ par deltaxxx ] Bonjour, J'ai fait un petit client ftp en vb6 utilisant winsock.dll je croyait qu'il était au point mais j'ai eu la preuve du contraire lors du list d [Vb .Net] Problème d'écriture de fichier texte [ par Neow26 ] Salut à tous,Donc voila mon problème : je souhaiterais écrire un fichier texte contenant des instructions ftp à executer à partir d'un fichier .batMon


Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales