¿Cómo detectar la instalación anterior y ofrecer la eliminación?
¿Cómo detecto si el usuario ya instaló el software y, de ser así, cómo ofrecer la posibilidad de eliminar la versión anterior?
He escrito algunas líneas para comprobar eso. ¿Es correcto por ahora? Si esto es correcto, ¿cómo puedo dejar que el usuario elija si desea continuar con la instalación o desinstalar la versión anterior?
#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;