Phalalis
Messages postés83Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention19 février 2012
-
27 févr. 2006 à 17:21
Phalalis
Messages postés83Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention19 février 2012
-
2 mars 2006 à 19:34
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 pour aller sur un ftp. J'aurai besoin de recuperer la taille du fichier a telecharger pour pouvoir la comparer a la taille du fichier apres le telechargement (voir si il a pas perdu qqchose en cours de route)
Voici mon code :
Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" _
(ByVal Agent As String, ByVal Access As Long, ByVal proxy As String, _
ByVal bypass As String, ByVal Flags As Long) As Long
Private Declare Function InternetConnect Lib "wininet" Alias "InternetConnectA" _
(ByVal handle As Long, ByVal server As String, ByVal port As Long, _
ByVal user As String, ByVal password As String, ByVal services As Long, _
ByVal Flags As Long, ByVal Context As Long) As Long
Private Declare Function InternetCloseHandle Lib "wininet" (ByVal handle As Long) As Long
Public Declare Function FtpOpenFile Lib "Wininet.dll" Alias "FtpOpenFileA" _
(ByVal hFtpSession As Long, ByVal sBuff As String, ByVal Access As Long, _
ByVal Flags As Long, ByVal Context As Long) As Long
Private Declare Function FtpGetFileSize Lib "Wininet.dll" _
(ByVal hConnect As Long, _
lpdwFileSizeHigh As Long) As Long
Private 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
Const FTP_TRANSFER_TYPE_ASCII As Long = 1
Const GENERIC_READ = &H80000000
Sub tel(nomprod)
Dim hFile As Long
Dim taille As Long
Dim nFileSizeHigh As Long
Dim repert As String
nomprod correspond au "nom_du_fichier_sur_le_ftp"
repert = "repertoire_d'arrivé_du_telechargement"
transfer = FTP_TRANSFER_TYPE_ASCII
hNetConn = InternetOpen("un_site", 0, vbNullString, vbNullString, 0)
hFTPConn = InternetConnect(hNetConn, "mon_ftp", 21, "mon_user", "mon_pass", 1, 0, 0)
hFile = FtpOpenFile(hFTPConn, tex, GENERIC_READ, transfer, 0)
taille = FtpGetFileSize(hFile, nFileSizeHigh)
FtpGetFile hFTPConn, nomprod, repert & nomprod, False, 0, transfer, 0
InternetCloseHandle hFile
InternetCloseHandle hFTPConn
InternetCloseHandle hNetConn
End Sub
probleme: mon hfile a bien une valeur, mais ma taille me renvoie 0.
CAN YOU HELP ME PLEASE
Phalalis
Messages postés83Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention19 février 20121 28 févr. 2006 à 13:23
Apparement mon sujet n'interresse personne.
Allez un tit n'effort, c'est super important. Jsuis bloqué rien qu'a cause de ca.
Ou alors si vous pouvez m'indiquer un autre moyen pour recuperer la taille d'un fichier sur un ftp indiquez jsuis toujours preneur. Sauf si c du .bat, mon tuteur trouve ca pas jolie (enfin bon)
SVP
Phalalis
Messages postés83Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention19 février 20121 1 mars 2006 à 09:52
Y a toujours personne pour m'aider, c'est bien dommage.
Ecrivez au moins un petit message de soutien dans ma douleur (lol).
J'ai continuer a chercher l'erreur mais je ne trouve pas.
Bon ben bonne journée a ceux qui liront ce topic.