Comment mon processus de désinstallation peut-il gérer correctement la restauration des entrées de registre?

StackOverflow https://stackoverflow.com/questions/402017

  •  03-07-2019
  •  | 
  •  

Question

Il est parfois nécessaire de modifier les paramètres du registre Windows lors de l'installation d'une application. J'ai récemment été frustré par les applications qui ne restaurent pas ces paramètres lors de leur désinstallation. Au fur et à mesure que je réfléchissais à cela, je me suis dit qu'il n'y avait peut-être pas de bonne (ou de valide) façon de sauvegarder et de restaurer les paramètres du registre. Prenez par exemple la séquence d'événements suivante:

  1. L'application A est propriétaire de l'action Ouvrir pour l'extension de fichier .abc .
  2. L'application B est installée et pirate l'action Ouvrir pour l'extension de fichier .abc .
  3. L'application A est désinstallée.
  4. L'application B est désinstallée.

À l'étape 3, si l'application A est suffisamment intelligente, elle détectera qu'elle ne possède plus l'action Ouvrir et par conséquent, elle omettra toute tentative de restauration.

À l'étape 4, l'application B peut-elle prendre une mesure valide?

  • Ne rien faire laisse l'action Ouvrir pointer vers un exécutable supprimé.
  • La restauration du pointeur sur l'application A est également un exécutable supprimé.
  • Demander à l'utilisateur n'est pas autorisé, car cela dépasse généralement les compétences techniques de l'utilisateur type. Si vous n'acceptez pas ces conditions, remplacez les étapes 1 et 2 par un autre changement de registre qui, selon vous, ne serait pas du domaine de la réponse de l'utilisateur.
  • La suppression de l'action obligera également l'utilisateur à prendre ultérieurement une décision non informée, ou à rendre certaines fonctions indisponibles à l'utilisateur.

Ce n’est que l’une des nombreuses mauvaises situations que je peux imaginer et qui n’existe pas à l’évidence de solution "correct" et "correct". Solution. Mon prochain projet nécessitera des modifications du registre lors de l'installation et j'aimerais connaître les pratiques recommandées ou les meilleures pour la désinstallation. Malheureusement, les mauvaises pratiques de désinstallation utilisées dans les logiciels commerciaux actuels me brûlent. Je suis conscient du fait qu'il n'y a pas de consensus sur les meilleures pratiques. Il faut donc beaucoup de travail pour bien faire les choses, ou bien un défaut de conception dans le registre. , ou les deux.

C’est un problème de programmation très réel pour moi. Je mets ça subjectif parce que je ne suis pas sûr qu'il y ait une solution unique correct à cette question. N'hésitez pas à ne pas être d'accord.

Était-ce utile?

La solution

Si vous écrivez Application B, je dirais qu'il ne faut pas détourner l'action Ouvrir de l'extension .abc. Pendant l’installation, demandez à l’utilisateur s’il souhaite associer des fichiers .abc à votre programme. Pendant la désinstallation, vérifiez si votre programme est toujours associé. Si tel est le cas, dissociez l’extension du fichier, sinon laissez-la tranquille.

Si, après la désinstallation de B, une autre application souhaite toujours être associée aux fichiers .abc, tenez-vous en au dépanneur. Après tout, il a accepté d'associer des fichiers .abc à votre application, puis a désinstallé votre application.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top