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

Services Windows Discussion :

Impossible d'écrire dans un dossier sur le réseau auquel j'ai accès


Sujet :

Services Windows

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    août 2017
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : août 2017
    Messages : 28
    Points : 24
    Points
    24
    Par défaut Impossible d'écrire dans un dossier sur le réseau auquel j'ai accès
    Bonjour,

    J'ai développé un service Windows qui permet de monitorer un ou plusieurs dossiers. Lorsqu'un nouveau fichier est détecté dans l'un de ces dossier, s'il est configuré dans le fichier d'options, il est envoyé par mail puis archivé.

    Mon fichier d'options est un fichier XML qui a cette forme :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <Options>
      <DossierExport path = "chemin du dossier monitoré">	
        <DossierArchives>chemin du dossier d'archivage</DossierArchives>
          <NomFichier nom = "nom du fichier à détecter">
            <MailTo>
              <Mail>adresse mail 1</Mail>
              <Mail>adresse mail 2</Mail>
            </MailTo>
    	<Sujet>sujet du mail</Sujet>
            <Texte>texte du mail</Texte>
          </NomFichier>
      </DossierExport>
    </Options>
    Tout se déroule sans problème sauf lorsque je mets un chemin réseau dans <DossierArchive> de la forme \\a1234\dossier\sous-dossier.

    Je log mes erreurs dans l'observateur d’événements et je vois ceci :
    Code X : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    System.UnauthorizedAccessException: L'accès au chemin d'accès est refusé.
       à System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
       à System.IO.__Error.WinIOError()
       à System.IO.File.InternalMove(String sourceFileName, String destFileName, Boolean checkHost)
       à System.IO.File.Move(String sourceFileName, String destFileName)
    Or je peux manuellement lire et écrire dans ce dossier.
    D'où peut venir cette erreur ?

    Merci.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : février 2010
    Messages : 3 611
    Points : 9 744
    Points
    9 744
    Billets dans le blog
    3
    Par défaut
    Ton service Windows tourne en utilisant un compte utilisateur specifique. Il faut verifier que ce compte ait bien les permissions requises.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    août 2017
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : août 2017
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    Effectivement le problème venait de là. Le service se lançait par défaut avec le compte système local, et non avec mon compte de domaine. Je ne connaissais pas cette subtilité des Services Windows.

    Merci !

    Pour les gens du futur, il faut aller dans la liste des services, clic-droit > Propriétés sur le service concerné et dans l'onglet Connexion, indiquer le compte que vous désirez.

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

Discussions similaires

  1. Impossible d'écrire dans un TextBox sur Onglet
    Par pascalouh dans le forum IHM
    Réponses: 7
    Dernier message: 10/07/2007, 10h21
  2. [C#2.0] Comment écrire dans un fichier sur un serveur ?
    Par meli0207 dans le forum Contribuez
    Réponses: 6
    Dernier message: 27/06/2006, 14h57
  3. Réponses: 35
    Dernier message: 21/05/2006, 21h01
  4. Réponses: 1
    Dernier message: 01/12/2005, 14h30

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