Transfert FTP [Résolu]

cs_onha
Messages postés
28
Date d'inscription
mercredi 26 décembre 2001
Dernière intervention
26 juillet 2018
- 29 mars 2013 à 13:47 - Dernière réponse : cs_onha
Messages postés
28
Date d'inscription
mercredi 26 décembre 2001
Dernière intervention
26 juillet 2018
- 1 avril 2013 à 13:26
Bonjour a vous tous,

Je travail sous excel 2010 et je transfert un fichier d'un serveur unix vers ma machine en utilisant le code ci-dessous.

Private Declare Function InternetCloseHandle Lib "wininet.dll" _
(ByVal hInet As Long) As Integer

Private Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" _
(ByVal hInternetSession As Long, ByVal sServerName As String, _
ByVal nServerPort As Integer, _
ByVal sUserName As String, ByVal sPassword As String, ByVal lService As Long, _
ByVal lFlags As Long, ByVal lContext As Long) As Long

Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" _
(ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, _
ByVal sProxyBypass As String, ByVal lFlags As Long) As Long

Private Declare Function FtpSetCurrentDirectory Lib "wininet.dll" Alias _
"FtpSetCurrentDirectoryA" (ByVal hFtpSession As Long, _
ByVal lpszDirectory As String) As Boolean

Private Declare Function FtpGetFile Lib "wininet.dll" Alias "FtpGetFileA" _
(ByVal hConnect As Long, ByVal lpszRemoteFile As String, _
ByVal lpszNewFile As String, ByVal fFailIfExists As Long, _
ByVal dwFlagsAndAttributes As Long, ByVal dwFlags As Long, _
ByRef dwContext As Long) As Boolean

Private Declare Function FtpPutFile Lib "wininet.dll" Alias _
"FtpPutFileA" (ByVal hConnect As Long, ByVal lpszLocalFile As String, _
ByVal lpszNewRemoteFile As String, ByVal dwFlags As Long, _
ByVal dwContext As Long) As Boolean

sub recup()
Dim HwndConnect As Long
Dim HwndOpen As Long
'Ouvre internet
HwndOpen = InternetOpen("SiteWeb", 0, vbNullString, vbNullString, 0)
'Connection au site ftp
HwndConnect = InternetConnect(HwndOpen, "xx.xx.xx.xx", 21, "recup", "recup", 1, 0, 0)
'positionnement du curseur dans le répertoire
FtpSetCurrentDirectory HwndConnect, "/"
'Téléchargement de test.txt
FtpGetFile HwndConnect, "DAS005.PRN", "c:\adpprn\DAS005.PRN", False, 0, &H0, 0

InternetCloseHandle HwndConnect 'Ferme la connection
InternetCloseHandle HwndOpen 'Ferme internet

end sub

Ce code fonctionne a merveille le seul petit hic c'est pour récupérer le dernier fichier je suis obligé de quitter excel et de ré-ouvrir le fichier pour récupérer de nouveau le fichier qui ce trouve sur mon serveur.

J'ai vu que pendant le transfert du fichier windows (Seven) crée un fichier dans le dossier Temporary Internet Files. J'ai bien essayé a l'aide d'une macro d’essayer de supprimer le fichier concerné dans le temp mais hélas la macro me dit que le fichier n'existe pas.

Merci pour votre aide.
Onha
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
cs_onha
Messages postés
28
Date d'inscription
mercredi 26 décembre 2001
Dernière intervention
26 juillet 2018
- 1 avril 2013 à 13:26
3
Merci
Et bien après avoir farfouillé sur le net je suis tombé sur un message datant 2006.

La solution ici

[Résolu]

Onha

Merci cs_onha 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 86 internautes ce mois-ci

Commenter la réponse de cs_onha

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.