2014-09-10 3 views
0

J'ai récemment commencé à obtenir des erreurs System.UnauthorizedAccessException lors de l'utilisation de File.AppendAllText pour écrire sur un lecteur partagé sur le réseau. Je pense qu'il y a eu des changements dans le réseau quand cela s'est produit. Le code dans ma demande n'a pas changé.UnauthorizedAccessException avec File.AppendAllText dans VB.NET

J'ai demandé à notre service informatique de m'accorder l'autorisation complète pour le dossier. Je peux voir que j'ai des autorisations pour Modifier, Lire & Exécuter, Lire, Ecrire sous mon nom d'utilisateur si je navigue vers le fichier et regarde l'onglet Sécurité sous propriétés. Je fais également partie d'un groupe avec lire, écrire et modifier les permissions dans le dossier.

Cela fonctionne sans erreur dans le même dossier:

File.WriteAllText(myFile, myText) 

Cela génère une erreur de System.UnauthorizedAccessException lorsqu'il atteint la AppendallText:

  If File.Exists(myFile) = False Then 
      ' Create a file to write to. 
      Dim createText As String = logTime & " " & report_data 
      File.WriteAllText(myFile, createText) 
     Else 
      Dim appendText As String = logTime & " " & report_data 
      File.AppendAllText(myFile, appendText) 
     End If 

J'ai essayé de supprimer le fichier et la création de nouveau , cela n'a fait aucune différence.
J'ai essayé File.SetAttributes (myFile, FileAttributes.Normal) Le département IT ne peut pas voir quel est le problème.

Je peux ouvrir, modifier et modifier manuellement le fichier. Le problème ne se pose que si j'essaie de le faire par programmation.

Y a-t-il un 'utilisateur' différent qui essaie de modifier les fichiers? Est-ce que le fichier pourrait être ouvert d'une manière ou d'une autre, ou cela générerait-il une erreur différente?

J'utilise VB.NET 2012, NET Framework 4.5, de Windows 8.1

+0

Y a-t-il une exception InnerException dans l'exception que vous obtenez? http://msdn.microsoft.com/en-us/library/system.exception.innerexception(v=vs.110).aspx – Aybe

Répondre

0

Les modifications du réseau étaient le problème. Il ne semble pas possible de résoudre ce problème tel quel. Au lieu de cela, j'ai fait une copie des données textuelles, j'ai ajouté mon nouveau texte, supprimé le fichier et enregistré le texte mis à jour dans un nouveau fichier.

Questions connexes