Windows 11 : c'esst la fin du forçage des associations de fichiers

☑️ Présentation du cocci-kit Cocci 11 et détails des mises à jour.
☑️ Support et suggestion pour le cocci-kit.
☑️ Présentation de chaque MODULE et détails des mises à jour..
☑️ Le support de chaque module se situe à côté de son message de présentation.
 Windows 10 Firefox  Avatar de l’utilisateur
Coccinelle France
Administrateur
Administrateur
Au moins 1000 messages à son actif

Messages : 1405
Inscrit depuis : 2 ans 10 mois
Localisation : Centre France
Contact :
Auteur du sujet

N°6591

Message non lu par Coccinelle »

Windows 11 : c'est la fin du forçage des associations de fichiers



Pendant des années, sous Windows XP, 7, 8 et encore 10, modifier l’application par défaut d’un type de fichier relevait d’une mécanique simple : il suffisait d’agir sur le Registre. Modifier un ProgID, ajuster une clé shell\open\command, parfois jouer avec assoc ou ftype, et le tour était joué. Le double-clic suivait immédiatement la nouvelle règle.

Sous Windows 11, cette logique ne fonctionne plus. Ce n’est pas un bug. C’est un changement d’architecture volontaire de la part de Microsoft, qui comme tout le monde le sait, ne nous veut que du bien, même si ça doit nous faire furieusement chier.
Comment cela fonctionnait avant
Historiquement, l’ouverture d’un fichier reposait sur une chaîne simple. Prenons l'exemple du fichier texte (.txt). Dans le Registre, ça se présentait globalement ainsi :
→ ProgID
→ shell\open\command
→ notepad.exe "%1"


Modifier txtfile\shell\open\command suffisait donc à détourner l’ouverture vers un autre éditeur. La hiérarchie était claire et entièrement modifiable via le Registre.
Ce que Windows 11 a ajouté (le bougre)
Windows 11 introduit une couche supplémentaire située ici :

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.ext\UserChoice

Cette clé contient :

• un ProgId
• un Hash

Et c’est ce couple qui décide réellement de l’application utilisée au double-clic. Tant que cette clé existe, elle écrase tout le reste :

• les clés HKLM\Software\Classes
• les anciennes associations txtfile
• les modifications via assoc ou ftype
• les détournements via shell\open

Autrement dit, la mécanique historique est toujours présente… mais elle n’est plus prioritaire. Toujours autrement dit, continuer à faire comme avant, c'est comme vouloir pisser dans un violon pour en sortir la danse des canards.

Pourquoi ce *@ç☠️ de Hash change tout ? Il n’est pas décoratif. Il est calculé selon un algorithme interne à Windows. Si l’on modifie simplement le ProgId à la main sans recalculer correctement le Hash, Windows considère l’association comme invalide et la restaure automatiquement. Cela empêche :

• les scripts “sauvages”
* les logiciels tiers imposant leurs associations
* les modifications silencieuses du Registre

Microsoft a clairement privilégié la stabilité et la protection de l’utilisateur au détriment de la liberté de modification directe. Je vous l''avais dit que Microsoft ne nous voulait que du bien (même si ça fait chier).
Pourquoi Image File Execution Options (IFEO) ne suffit plus
Certains détournements classiques consistaient à rediriger notepad.exe via : Image File Execution Options. Cela fonctionne encore… mais uniquement si l’Explorateur lance réellement notepad.exe (dans le dossier Wondows). Or sous Windows 11, l’association par défaut pour .txt ou .ini pointe souvent vers une application AppX (version Microsoft Store du Bloc-notes). Dans ce cas, notepad.exe n’est même plus appelé. Détourner notepad.exe n’impacte donc pas le double-clic.
Ce qu’il est encore (théoriquement) possible de faire proprement
On peut toujours :

• modifier les verbes edit
* modifier les commandes shell\open
* agir sur des ProgID spécifiques
* détourner un exécutable Win32 classique

Mais ces modifications ne prendront effet... que si UserChoice ne les neutralise pas. Donc retour à la case départ.
Les 3 solutions qui restent
1) Méthode officielle: Passer par les Paramètres → Applications par défaut. C’est la méthode stable et garantie.
2) Méthode entreprise: Déployer un fichier XML d’associations par défaut via stratégie de groupe ou DISM. Adapté aux environnements maîtrisés. Prise de tête.
3) Méthode non officielle: Utiliser un outil capable de recalculer correctement le Hash de UserChoice. Efficace, mais hors cadre Microsoft, et potentiellement fragile lors de mises à jour majeures. Deuxième prise de tête.
Conclusion
Sous Windows 11, les associations de fichiers ne sont plus simplement une question de Registre. Elles sont protégées par un mécanisme de validation destiné à empêcher les modifications forcées. Il ne s’agit pas d’une limitation technique, mais d’un choix architectural.

Les méthodes qui fonctionnaient sous Windows 10 peuvent encore modifier des comportements secondaires, mais elles ne peuvent plus imposer une application par défaut si UserChoice est présent.

La liberté existe toujours... Elle demande simplement de passer par les règles du système plutôt que de les contourner :sansdent:.

Sur le cocci-kit, la partie permettant de modifier son éditeur de texte par défaut a donc disparu... en attendant des jours meilleurs ?
Mon Autre Site :
Image

Revenir à « 🐞 Cocci 11 : le cocci-kit et ses modules »