[VB.Net] Renommer un fichier sur un espace FTP [Résolu]

ideesnoires 8 Messages postés samedi 28 mars 2009Date d'inscription 17 janvier 2010 Dernière intervention - 13 juin 2009 à 21:53 - Dernière réponse : Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention
- 16 juin 2009 à 19:44
Bonjour a toutes et a tous,
Je pense en dire long rien qu'avec le titre, mais plus on fournit d'infos, et meilleure est la qualité de la réponse ^^
Alors en effet, sur une machine cliente un fichier journal (log) en .txt est créer et est envoyé via ftp, m'envoie se déroule parfaitement bien, là n'est pas le soucis...C'est à dire qu'une fois envoyé, j'aurais souhaitée qu'il soit renommé avec la date et heure, "hélas, c'est là qu'est l'os", j'atteind mes limites et fait donc appel a votre aide...
Si quelqu'un a une solution ou une piste sur laquelle m'orienté?

PS : je fais ça en vb.net ;)
hum...et suis je au bon endroit pour poser ma question?
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
cs_Galain 1270 Messages postés mardi 11 novembre 2003Date d'inscription 24 juillet 2013 Dernière intervention - 14 juin 2009 à 00:37
3
Merci
il existe la fonction Api FtpRenamefile
Voici sa déclaration en VB 6.0 : adapte la pour VB Net

PrivateDeclareFunction FtpRenameFile Lib "wininet.dll" Alias "FtpRenameFileA" (ByVal hFtpSession AsLong, ByVal lpszExisting AsString, ByVal lpszNew AsString) AsBoolean

La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

GRENIER Alain

Merci cs_Galain 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de cs_Galain
Meilleure réponse
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 14 juin 2009 à 01:59
3
Merci
Bonsoir,

Pour les fonctions FTP le framework dispose des fonction de requêtes FTP :

Utilise'System.Net.FtpWebRequest' pour evoyer une requête FTP vers un serveur, 'System.Net.FtpWebResponse' pour recevoir un réponse de celui-ci, tu peux bien entendu choisir ta requête via les constantes de la classe : 'System.Net.WebRequestMethods.Ftp' :

System.Net.WebRequestMethods.Ftp.AppendFile
System.Net.WebRequestMethods.Ftp.DeleteFile
System.Net.WebRequestMethods.Ftp.DownloadFile
System.Net.WebRequestMethods.Ftp.GetDateTimestamp
System.Net.WebRequestMethods.Ftp.GetFileSize
System.Net.WebRequestMethods.Ftp.ListDirectory
System.Net.WebRequestMethods.Ftp.ListDirectoryDetails
System.Net.WebRequestMethods.Ftp.MakeDirectory
System.Net.WebRequestMethods.Ftp.PrintWorkingDirectory
System.Net.WebRequestMethods.Ftp.RemoveDirectory
System.Net.WebRequestMethods.Ftp.Rename
System.Net.WebRequestMethods.Ftp.UploadFile
System.Net.WebRequestMethods.Ftp.UploadFileWithUniqueName

Pour plus d'information presse F2 sous Visual Basic et saisie FTP. Tu peux aussi rechercher des exemples sur ce site.

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.

Merci Mayzz 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de Mayzz
Meilleure réponse
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 16 juin 2009 à 10:45
3
Merci
Salut,

Il est vrais en théorie cela sert pour renommer des dossiers, mais ca fonctionne aussi avec les fichiers.

Attention à la syntaxe : ftp.Rename ("/Dossier/sous dossier/fichier.ext", "Nouveau nom de fichier.ext")

Regarde cette source c'est un client FTP qui l'utilise.

@+ Mayzz.

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <

Merci Mayzz 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de Mayzz
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 14 juin 2009 à 02:03
0
Merci
Oulala ! je me suis même pas relu ;o) 
Désolé à 2h00 du mat. je ne suis plus très frais ^^
                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <
Commenter la réponse de Mayzz
ideesnoires 8 Messages postés samedi 28 mars 2009Date d'inscription 17 janvier 2010 Dernière intervention - 14 juin 2009 à 12:04
0
Merci
Bonjour,
Je vous remercie infiniment!
Je test vos pistes et vous donne ma solution utilisée :D
Merci beaucoup!!
Commenter la réponse de ideesnoires
ideesnoires 8 Messages postés samedi 28 mars 2009Date d'inscription 17 janvier 2010 Dernière intervention - 16 juin 2009 à 09:53
0
Merci
Re bonjour,
Alala j'ai du mal^^ De ce que j'ai cru comprendre a ce que visual studio me dit, "System.Net.WebRequestMethods.Ftp.Rename" sert a renommer un dossier, sa fonctionne, mais po pour mon fichier :s
Je vais essayer de voir ce que pourrais donner une adaptation de la piste de Galain ;)
D'autres idées?
Bonne journée à tous!
Commenter la réponse de ideesnoires
ideesnoires 8 Messages postés samedi 28 mars 2009Date d'inscription 17 janvier 2010 Dernière intervention - 16 juin 2009 à 17:03
0
Merci
Bonjour,
Je te remercie beaucoup de ta réponse, très appréciable quand on débute comme moi ^^
Alors j'ai bien trouvé la partie ou il renomme dans la source intéressante que tu cites (fichier demo.vb ligne 200), mais certainement faute à moi, je n'y vois pas ce que je cherche :s
En utilisant "System.Net.WebRequestMethods.Ftp.Rename("ftp://@ftp/arborescence/fichier.txt", "ftp://@ftp/arbo/fichier160609.txt")" , visual studio me renvoie "Expression is not a method", et la je dis "GLURP" ^^
J'ai tout de même ajouté "Imports System.net.WebRequestMethods", mais cela dépasse quelque peu...
Commenter la réponse de ideesnoires
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 16 juin 2009 à 17:30
0
Merci
Tu peux poster ton code ???

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <
Commenter la réponse de Mayzz
ideesnoires 8 Messages postés samedi 28 mars 2009Date d'inscription 17 janvier 2010 Dernière intervention - 16 juin 2009 à 19:14
0
Merci
Re bonjour,
Oui bien sur, sans aucun soucis pour le code, c'est un projet sur lequel je fais les essais avant d'en concrétiser un autre plus gros :

<hr size="2" width="100%" />Imports System
Imports System.Net.WebRequestMethods.Ftp

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If System.IO.File.Exists("c:\logsauvegarde.txt") = False Then
            System.IO.File.CreateText("c:\logsauvegarde.txt")

        Else
            Dialog1.Show()
        End If

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        My.Computer.Network.UploadFile("c:\logsauvegarde.txt", "ftp://@ftp/log.txt", "id", "mdp")

       
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        System.Net.WebRequestMethods.Ftp.Rename("ftp://@ftp/logsauvegarde.txt", "ftp://@ftp/log160609.txt")

    End Sub
End Class

<hr size="2" width="100%" />
Commenter la réponse de ideesnoires
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 16 juin 2009 à 19:44
0
Merci
Heu... oué effectivement ya une erreur de syntaxe...
T'as été voirla source que je t'ai filé ? faut regarder dans la classe qui gère le FTP...

                                                                              
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer. <
Commenter la réponse de Mayzz

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.