Partage
  • Partager sur Facebook
  • Partager sur Twitter

AppData vb.net

    15 mai 2011 à 22:30:59

    Bonjour,
    Je suis en train d'écrire un programme de sauvegarde et j'ai besoin d'accedez, entre autre, au dossier AppData.
    Lorsque j'essaye de lire les fichiers qu'il comporte j'ai une execption unauthorizedaccessexception:
    http://nsa25.casimages.com/img/2011/05 [...] 345284932.jpg

    Quelle est la solution à mettre en oeuvre afin de régler ce problème?

    Merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      15 mai 2011 à 22:53:29

      Normal, tu tentes d'accéder à un lien symbolique (AppData\Local\Application Data)
      Utilise Environment.GetSpecialFolder :
      Environment.GetSpecialFolder(Environment.SpecialFolder.ApplicationData)
      

      Ca marche quelle que soit la version de Windows, y compris les futures versions.

      Ensuite, tu peux combiner ce chemin avec le nom de ton appli :
      Dim path As String = Path.Combine(Environment.GetSpecialFolder(Environment.SpecialFolder.ApplicationData), "Mon application")
      

      puis stocker ce que tu veux.
      • Partager sur Facebook
      • Partager sur Twitter
        16 mai 2011 à 19:23:42

        OK
        Mais dans mon code, j'utilise un For, je ne peux donc pas remplacer
        AppData\Local\Application Data
        par
        Environment.GetSpecialFolder(Environment.SpecialFolder.ApplicationData)

        si, peut-on?

        merci d'avance
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          16 mai 2011 à 21:41:42

          Je comprends pas...tu essaies de lire tous les dossiers contenus dans AppData ?
          Montre ton code ^^
          • Partager sur Facebook
          • Partager sur Twitter
            16 mai 2011 à 22:01:00

            Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
                      For Each File As String In System.IO.Directory.GetDirectories("C:\Users\Charles", "*.*", IO.SearchOption.AllDirectories) 
                           MsgBox(File)'(j'affiche juste le chemin pour tester);
                      Next
            End Sub
            
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              16 mai 2011 à 23:53:22

              Il te faut tester si chaque dossier est un lien symbolique avant d'entrer dedans. (je dois hélas te référer à Google, j'ai aucune idée de comment on fait ça :s)
              Mais pourquoi vouloir scanner chaque dossier dans le profil utilisateur ?
              • Partager sur Facebook
              • Partager sur Twitter
                17 mai 2011 à 15:11:12

                ok
                Le but de mon programme est de faire une sauvegarde de mon pc.
                Donc il copie tout(*) le dossier C:\Users\Charles par exemple.
                (*) Uniquement les fichiers dont la date de modification est supérieur a celle du meme fichier dans mon disque de sauvegarde.
                • Partager sur Facebook
                • Partager sur Twitter

                AppData vb.net

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown