2008-09-01 7 views
1

Imaginez que nous ayons un programme qui essaie d'écrire dans un fichier particulier, mais qui échoue.Quelles étapes puis-je donner à un utilisateur Windows pour écrire un fichier donné?

Sur la plate-forme Windows, quelles sont les causes possibles de l'annulation de l'écriture du fichier et quelles sont les étapes qui pourraient être proposées à un utilisateur final/administrateur pour le corriger.


S'il vous plaît inclure des étapes qui pourraient nécessiter des autorisations d'administrateur (évidemment les utilisateurs ne peuvent être administrateurs, mais pour cette question, supposons qu'ils sont (ou peuvent devenir) administrateurs.

Aussi, je ne suis pas réel ? familiers avec la façon dont les autorisations sont calculées dans les fenêtres - Est-ce que l'utilisateur doit écrire l'accès à chaque répertoire l'arbre, ou quelque chose comme ça

Répondre

3

Quelques suggestions:

  • Aucune autorisation d'écriture (obtention d'une autorisation via l'onglet Sécurité dans la fenêtre Propriétés du fichier; vous devez être le propriétaire du fichier ou un administrateur)
  • Le fichier est verrouillé (fermez tout programme pouvant contenir le fichier, puis redémarrez si cela ne vous aide pas)
  • Le fichier a l'attribut DOS en lecture seule (non défini à partir de fichier fenêtre Propriétés, ou attrib -r, vous devez être le propriétaire du fichier ou un administrateur)

Edit 1: Seul le deuxième élément (fichier est verrouillé) a une solution que tous les utilisateurs sont susceptibles d'être en mesure faire sans aide. Pour le premier et le troisième, vous voudrez probablement donner des conseils (et espérer que le fichier n'a pas été fait intentionnellement en lecture seule!).

Édition 2: Techniquement, l'utilisateur a besoin d'écrire et d'exécuter des permissions (chdir) sur tous les répertoires jusqu'à la racine. Windows peut ignorer certaines des vérifications récursives de l'arborescence en tant qu'optimisation des performances, mais vous ne devriez pas vous fier à cela car les administrateurs peuvent imposer à ces utilisateurs des «vérifications transversales».

Édition 3: @RobM: Oui, vous devriez vérifier qu'il n'y a aucune raison évidente que l'utilisateur ne devrait pas avoir les permissions dont il a besoin mais qu'il n'a pas. J'y ai fait allusion d'une manière moins directe lors de mon premier montage. Cependant, dans certains cas, les utilisateurs doivent avoir une autorisation d'écriture sur un fichier, mais pas en raison d'une corruption du système de fichiers, d'un programme qui se comporte mal ou d'une erreur de leur part.

1

Si vous rencontrez des difficultés à travailler si le fichier est verrouillé, essayez d'utiliser Unlocker - c'est un utilitaire gratuit vraiment utile qui vous montre le processus qui a verrouillé le fichier et vous permet de forcer un déverrouillage si nécessaire.

0

Sur Vista pourrait-il aussi être "marqué" comme dangereux parce qu'il a été téléchargé à partir d'Internet et vous devez cliquer sur le bouton de déblocage dans sa boîte de dialogue des propriétés de l'explorateur?

0

Changeons cela un peu. Si votre programme essaie d'écrire dans un fichier et que vous échouez, vous devez soit changer l'emplacement du fichier dans lequel l'utilisateur peut écrire, soit vérifier les droits corrects au démarrage du programme et refuser d'exécuter si l'utilisateur ne le fait pas. les avoir. Le piétinement des autorisations du système n'est pas la solution.

Questions connexes