¿Alternativamente es posible actualizar manualmente la barra de progreso incorporada? Básicamente tengo 2 MSI incluidas y el uso de Inno Setup como iniciador, y dependiendo de la entrada del usuario, se instalarán una o ambas MSI. Tengo algo que funciona utilizando instrucciones Exec en CurStepChanged pero no actualiza la barra de progreso a medida que se extraen los archivos y parece que el instalador está atascado. Supongo que el resultado final es que quiero algunas actualizaciones de la barra de progreso mientras los archivos se extraen a la carpeta temporal. La siguiente es mi código actual:En Inno Setup, ¿es posible agregar sentencias condicionales a lo que se ejecuta en la sección [Ejecutar]?
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: Integer;
begin
if(CurStep = ssInstall) then begin
if(InstallServer) then begin
ExtractTemporaryFile('ServerSetup.msi');
Exec('msiexec',ExpandConstant('/i "{tmp}\ServerSetup.msi" /qb INSTALLDIR="{code:GetInstallPath}\Server\" ALLUSERS=2'),'', SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
if(InstallClient) then begin
ExtractTemporaryFile('ClientSetup.msi');
Exec('msiexec',ExpandConstant('/i "{tmp}\ClientSetup.msi" /qb INSTALLDIR="{code:GetInstallPath}\Client\" ALLUSERS=2'),'', SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
end;
end;
creo que el cheque: es lo que necesitaba saber. No vi nada al respecto en el archivo de ayuda de Inno Setup (que sorprendentemente ha sido bastante útil) y no era una opción en la guía de ISTool. +1 ahora y aceptado si funciona :) – Davy8
He vinculado a la sección correspondiente del archivo de ayuda en la respuesta (consulte "Funciones de comprobación"). Está ahí. ISTool también es compatible con esto. Basta con mirar la pestaña "Común" de cualquier elemento en la sección "Secuencias de comandos". Si ya escribió funciones con un resultado booleano, simplemente puede elegirlas de un menú desplegable allí. –
Sí, lo noté después de empezar a hacer esto. Parece que funciona y es lo más cercano al ideal que probablemente obtendré sin pasar horas y días investigando y haciendo un diálogo de progreso personalizado y esas cosas. Gracias :) – Davy8