IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

FileStream & Access to path denied


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Par défaut FileStream & Access to path denied
    Bonjour,

    Je souhaite faire un gestionnaire de téléchargement mais j'ai des problèmes de droits d'écriture sur mon disque...

    Google parle d'ajouter les droits à l'utilisateur ASPNET au dossier dans lequel je veux écrire mais mon application est en WPF... Donc je ne devrais pas avoir de problème avec les droits d'écriture étant donné que je l'éxécute à partir de mon disque dur !

    Voici un peu de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    private void Download()
            {
                using (WebClient wcDownload = new WebClient())
                {
                    try
                    {
                        webRequest = (HttpWebRequest)WebRequest.Create(URLTb.Text); //Create a request to the file we are downloading
                        webRequest.Credentials = CredentialCache.DefaultCredentials; //Set default authentification for retireving the file
                        webRequest.UserAgent = "Steven";
                        webResponse = (HttpWebResponse)webRequest.GetResponse(); //Retrieve the response from the server
     
                        Int64 fileSize = Convert.ToInt64(webResponse.ContentLength); //Ask the server for the file size and store it
                        Debug.WriteLine(fileSize);
     
                        strResponse = wcDownload.OpenRead(URLTb.Text); //Open the URL for download
                        strLocal = new FileStream(LocationTb.Text, FileMode.Create, FileAccess.Write, FileShare.None); //Create a new file stream where we will be saving the data (local drive)
     
                        int bytesSize = 0; //It will store the current number of bytes we rettrieved from the server
                        byte[] downBuffer = new byte[2048]; //A buffer for storing and writting the data retrieved from the server
     
                        //Loop through the buffer until the buffer is empty
                        while ((bytesSize = strResponse.Read(downBuffer, 0, downBuffer.Length)) > 0)
                        {
                            Debug.WriteLine(bytesSize);
                            strLocal.Write(downBuffer, 0, bytesSize); //Write the data from the buffer to the local hard drive
                            this.Dispatcher.Invoke(new UpdateProgressCallback(this.UpdateProgress), new object[] { strLocal.Length, fileSize }); //Invoke the method that updates the label & progress bas
                        }
                    }
                    finally
                    {
                        //strResponse.Close();
                        //strLocal.Close();
                    }
                }
            }
    Le problème ce situe ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strLocal = new FileStream(LocationTb.Text, FileMode.Create, FileAccess.Write, FileShare.None);
    Le FileAccess.Write ne lui convient pas

    Merci de votre aide et bonne soirée,
    Steven

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Quelle est la valeur de LocationTb.Text ?
    Tu as essayé avec différents chemins ?

  3. #3
    Membre confirmé
    Étudiant
    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Par défaut
    Le chemin est le suivant : C:\Users\Krustig\Desktop

    Je le récupère via le FolderBrowserDialog de Windows.Forms

    J'ai essayé d'autres dossiers, cela ne fonctionne pas...

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Krustig Voir le message
    Je le récupère via le FolderBrowserDialog de Windows.Forms
    Ah ben voilà... tu récupères donc un chemin de répertoire, pas de fichier
    Et le nom du fichier, le FileStream peut pas l'inventer

  5. #5
    Membre confirmé
    Étudiant
    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Par défaut
    Pas faux :p

    Merci tomlev !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ASP.NET-IIS]Access to the path 'E:\*' is denied
    Par Mictou dans le forum ASP.NET
    Réponses: 12
    Dernier message: 15/02/2010, 18h12
  2. problème c# base access utilisation path
    Par anismans dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/05/2009, 16h25
  3. L'erreur : Access to database denied
    Par witch dans le forum PostgreSQL
    Réponses: 12
    Dernier message: 06/03/2009, 16h09
  4. [C#]Access to the path denied
    Par zitoun dans le forum ASP.NET
    Réponses: 1
    Dernier message: 04/06/2007, 10h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo