Il y a quelques autres questions portant le même titre mais elles ne résolvent pas mon problème, alors j'en ouvre une autre.
J'ai défini l'autorisation pour le fichier "hôtes" sur un accès complet à l'utilisateur actuel. J'ai même pris la propriété. L'utilisateur actuel est dans le groupe Administrateurs.
J'ai désactivé UAC.
J'ai supprimé la permission de lecture seule du fichier.
C:\Windows\System32\drivers\etc>attrib hosts
A C:\Windows\System32\drivers\etc\hosts
J'ai désactivé mon antivirus Panada. J'ai également arrêté 3 services panda de la palette Services.
J'ouvre une ligne de commande surélevée (exécutée en tant qu'administrateur). Exécutez le Bloc-notes et modifiez le fichier. Lorsque j'essaie d'enregistrer le fichier, le message d'erreur suivant s'affiche:
"Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus.
Je vérifie le fichier en utilisant "Unlocker" et le logiciel dit qu'il n'y a pas de verrou actif sur le fichier.
Quelqu'un peut-il aider?
Je pourrais éventuellement trouver le coupable. C’était un programme appelé "Tiny Firewall" (un logiciel de gestion des règles du pare-feu Windows) qui était à l’origine du problème.
Je ne suis pas tout à fait sûr de ce que cela fait au fichier hosts car aucun des logiciels disponibles ne pouvait verrouiller le fichier. Je pourrais trouver qu'il est en quelque sorte impliqué dans le fichier en utilisant le moniteur de processus (Sysinternals). J'ai quitté l'interface utilisateur et arrêté le processus (je ne pouvais pas m'arrêter, j'ai tué l'arbre de processus et mis en service manuel).
P.S .: C'est une fonctionnalité de Tiny Firewall (protection du fichier hosts) et vous pouvez simplement le désactiver à partir de ses paramètres.
Je viens de trouver et de résoudre ce problème, après un peu de mal, donc je pensais offrir des notes.
J'ai utilisé l'Explorateur de processus SysInternals , , en tant qu'administrateur , pour trouver le processus de verrouillage du fichier ( en utilisant Find > Find Handle or DLL
). Notez que lorsque je l'ai exécuté sans autorisations d'administrateur, il ne pouvait pas voir le processus WRSA
au niveau du système.
Dans mon cas, il s'agissait de WRSA.exe
, qui correspond à Webroot Secure Anywhere. La désactivation de la protection a déverrouillé le fichier et j'ai pu l'écraser facilement. Dans certaines versions de Webroot, vous devrez ouvrir "Paramètres avancés> Boucliers" et décocher l'option permettant de bloquer les modifications apportées au fichier hosts.
Il va de soi que les logiciels antivirus doivent protéger des fichiers tels que hosts
, bien sûr. Malware aime ce genre de chose.