16 votes

Comment détecter une ancienne installation et proposer sa suppression ?

Comment détecter si l'utilisateur a déjà installé le logiciel et, le cas échéant, comment lui offrir la possibilité de supprimer l'ancienne version ?

J'ai écrit quelques lignes pour vérifier cela. Est-ce correct pour le moment ? Si c'est correct, alors comment puis-je laisser l'utilisateur choisir s'il veut continuer l'installation ou désinstaller l'ancienne version ?

#define UNINSTKEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\setupname_is1"

var
  uninstallPath: string;

function InitializeSetup: Boolean;
begin
  if (RegQueryStringValue(HKLM,'{#UNINSTKEY}','UninstallString',uninstallPath)) and
     (uninstallPath <> '') and (fileexists(uninstallPath)) then
  begin
    Result :=
      (MsgBox(CustomMessage('NotVerifiedVersionFound'), mbConfirmation,
              MB_YESNO or MB_DEFBUTTON2) = IDYES);
  end;
  { ... }
end;

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X