~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période. Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes. ~ Rechercher ~
~ Annuaire VB ~
~ Partenaires ~
|
Fonction : DelFtpFile ByVal sAgent As String, ByVal lAccessType As Long, _ ByVal sProxyName As String, _ ByVal sProxyBypass As String, ByVal lFlags As Long) As Long Public 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 Public Declare Function FtpSetCurrentDirectory Lib "wininet.dll" Alias _ "FtpSetCurrentDirectoryA" (ByVal hFtpSession As Long, _ ByVal lpszDirectory As String) As Boolean Public Declare Function FtpDeleteFile Lib "wininet.dll" Alias "FtpDeleteFileA" ( _ ByVal hFtpSession As Long, _ ByVal lpszFileName As String) As Boolean Public Declare Function InternetCloseHandle Lib "wininet.dll" ( _ ByVal hInet As Long) As Integer Public Const INTERNET_DEFAULT_FTP_PORT = 21 Public Const INTERNET_SERVICE_FTP = 1 Public Enum eTRANSFERT_TYPE FTP_TRANSFER_TYPE_ASCII = &H1 FTP_TRANSFER_TYPE_BINARY = &H2 End Enum Function DelFtpFile(stServ As String, stLogin As String, stPass As String, _ stRepFtp As String, stFicFtp As String) As Boolean ' Cette fonction efface un fichier sur un serveur FTP. ' stServ contient le nom ou l'adresse IP du serveur FTP ' stLogin est le login à utiliser ' stPass est le mot de passe associé au login ' stRepFtp est le répertoire FTP ou sera placé le fichier ("/" pour la racine) ' stFicFtp est le nom du fichier qui sera effacé du serveur ' La fonction retourne Vrai si le transfert à réussi, sinon Faux. Dim lgFtp As Long, lgSession As Long, lgDir As Long Dim inRes As Integer Dim blOk As Boolean blOk = False ' Récupère un pointeur vers la connexion internet courante lgSession = InternetOpen("DelFtpFile", 1, vbNullString, vbNullString, 0) If lgSession Then ' Récupère un pointeur vers pour session FTP lgFtp = InternetConnect(lgSession, stServ, INTERNET_DEFAULT_FTP_PORT, _ stLogin, stPass, INTERNET_SERVICE_FTP, 0, 0) If lgFtp Then ' Positionne le répertoire distant If FtpSetCurrentDirectory(lgFtp, stRepFtp) Then ' Efface le fichier blOk = FtpDeleteFile(lgFtp, stFicFtp) Else MsgBox "Erreur de positionnement dans le répertoire distant!" End If Else MsgBox "Erreur ouverture session FTP, vérifiez l'adresse, le login/pwd." End If ' Libération du pointeur inRes = InternetCloseHandle(lgFtp) Else MsgBox "Pas de connexion!" End If ' Retourne le résultat DelFtpFile = blOk End Function |