Hola,
Como sabes, en los "scripts" de Inno Setup existe una sección de nombre "CODE", en que podemos usar código fuente de cierta versión de Object Pascal para las instalaciones y desinstalaciones que podemos llevar a cabo con Inno Setup. Existen una serie de funciones "predeterminadas" que podemos usar, y una de ellas es "InitializeSetup()".
Código:
[code]
function InitializeSetup(): boolean;
begin
Result := RequiredProgramIsInstalled();
end;
Como ves, la función "InitializeSetup()" retornará un valor "booleano", "True" o "False", de modo que se continúe con la instalación o se cancele, respectivamente. Ahora lo que tienes que ver es cómo implementar la función "RequiredProgramIsInstalled()". Ahí ya me temo que no te puedo ayudar.
Tal vez será cuestión de averiguar que existe un determinado archivo o directorio, o bien una clave en el Registro de Windows, en definitiva, has de ver cómo lo haces, empero, al menos ya sabes que cuentas con la función "InitializeSetup()", que puedes usar, entre otras cosas, para tratar de localizar el programa que necesitas.
Es posible que también te interese revisar otras funciones de Inno Setup para el apartado "CODE". En la ayuda están todas ellas, e igual alguna se adapta mejor todavía a la que yo he referido aquí.