VB Copie Mes Document win7

Fermé
jujukk1 Messages postés 3 Date d'inscription vendredi 13 décembre 2013 Statut Membre Dernière intervention 15 décembre 2013 - Modifié par pijaku le 13/12/2013 à 11:26
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 16 déc. 2013 à 18:13
Bonjour, cela fait 5 jours que j'hère sur le net afin de trouver comment copier mes documents sous Windows 7.

j'ai utiliser :

Private Sub BD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BD.Click
       
        If System.IO.Directory.Exists(TB3.Text) = False Then
            System.IO.Directory.CreateDirectory(TB3.Text)
        End If
        If TB3.Text.Contains("Documents") Then
            TB3.Text.Replace("C:\Users\", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments))
           TB3.Text.Replace(Environment.UserName, "")
        End If
        My.Computer.FileSystem.CopyDirectory(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), TB3.Text, True)
        MsgBox("La copie s'est exécutée correctement", vbInformation, "Etat de la sauvegarde")

    End Sub




explication :

tb3 = textbox relier a un bouton recherche des dossier (choisie la ou j'enrejistre le dossier "Mes Document')

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) = "Mes Document" de l'utilisateur courant


Problème rencontrer :

L'accès au chemin d'accès 'C:\Users\Julien\Documents\Ma musique\' est refusé.

Merci de vos réponse future.
A voir également:

4 réponses

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
13 déc. 2013 à 18:59
Bonjour,
Après quelque cheveux gris supplémentaires... :=)))
Effectivement, semblerait qu'il y ai un bug dans VB !!
Quand tu veux copier MyDocuments l'erreur sur Ma musique est normale vu que ce répertoire n'est pas dans "Mes documents"
Alors que si tu copie MyMusiq ça fonctionne parfaitement.
Autre constatation, si ton répertoire source contient le mot "Documents" tes conditions font en sorte que tu copie "Documents" sur le même répertoire, d'où l'erreur.
Quel sont les répertoires que tu veux sauver ?
A+

0
jujukk1 Messages postés 3 Date d'inscription vendredi 13 décembre 2013 Statut Membre Dernière intervention 15 décembre 2013
Modifié par jujukk1 le 15/12/2013 à 13:53
je souhaite sauvegarder juste ce chemin : C:\Users\"utilisateur courant"\Documents

j'ai déjà les ligne pour sauvegarder Desktop et Favorites
0
jujukk1 Messages postés 3 Date d'inscription vendredi 13 décembre 2013 Statut Membre Dernière intervention 15 décembre 2013
Modifié par jujukk1 le 15/12/2013 à 14:21
on ma donner une solution qui marche très bien ici : https://www.developpez.net/forums/d1400865/dotnet/langages/vb-net/vb-copie-document-win7/

je met le code complet et rectifier pour mes documents, je donnerais le script une foi fini, on ne sais jamais sa peut servir.

Private Sub BD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BD.Click

If System.IO.Directory.Exists(TB3.Text) = False Then
System.IO.Directory.CreateDirectory(TB3.Text)
End If

If TB3.Text.Contains("Documents") Then
TB3.Text = TB3.Text.Replace("C:\Users\", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments))
TB3.Text = TB3.Text.Replace(Environment.UserName, "")

End If
My.Computer.FileSystem.CopyDirectory(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), TB3.Text, FileIO.UIOption.AllDialogs) ' Marche

MsgBox("La copie s'est exécutée correctement", vbInformation, "Etat de la sauvegarde")
End Sub

Private Sub TB3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TB3.TextChanged

End Sub

Private Sub BP2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BP2.Click

TB3.Text = "choisissez le repertoire ou enregistrer!"
FolderBrowserDialog3.ShowDialog()
TB3.Text = FolderBrowserDialog3.SelectedPath
End Sub

bd = bouton copie document
tb3 = textbox 3
bp2 = bouton parcourir 2
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 16/12/2013 à 18:15
Re,
Comme dis sur DVP, ce n'est pas une solution mais une façon détournée de résoudre ton problème et il est évident que ton correspondant est de mon avis.
Jai encore fait des recherches et il semblerait que contrairement à ce que l'ont pourraient croire les arguments "Environment.SpecialFolder.MyDocuments" renvoient un string et bien non, c'est un integer. D'où ma réflexion.. doit y avoir une confusion entre un Integer 32bits et un integer 64 bits qui est en réalité un long.
Comme apparement tu ne voulais pas la fenêtre de suivi remplace la ligne par...
My.Computer.FileSystem.CopyDirectory(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), TB3.Text, FileIO.UIOption.OnlyErrorDialogs)


Ça fonctionne aussi.
A+
PS: tu peu faire part de ma réflexion sur DVP.
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
0