lunes, 10 de junio de 2013

Imagen Splash en InnoSetup



Con un pequeño codec podremos adornar nuestras instalaciones con una imagen que salte al iniciar la instalación.




Aqui el codigo:

[Files]
Source: Files\Splash.png; DestDir: {tmp}; Flags: dontcopy
Source: Files\isgsg.dll; DestDir: {tmp}; Flags: dontcopy

[Code]
procedure ShowSplashScreen(p1:HWND;p2:AnsiString;p3,p4,p5,p6,p7:integer;p8:boolean;p9:Cardinal;p10 :integer); external 'ShowSplashScreen@files:isgsg.dll stdcall delayload';
procedure Splash();
begin
ExtractTemporaryFile('isgsg.dll');
ExtractTemporaryFile('Splash.png');
ShowSplashScreen(WizardForm.Handle,ExpandConstant( '{tmp}')+'\Splash.png',1000,3000,1000,0,255,False, $FFFFFF,10);
end;

procedure InitializeWizard();
begin
Splash();
end;


Recordad que la imagen es PNG en transparencia.

2 comentarios :

  1. Estuve comprobando algunas opciones de este script, como por ejemplo en el 1000,3000,1000,0,255.
    El primer 1000 significa que el fade de entrada de la imagen (FadeIn) dura 1 segundo, el segundo valor de 1000 es lo mismo pero es un Fade de salida (FadeOut). El 3000 es la cantidad de segundos que dura la imagen mostrada desde que finaliza el FadeIn hasta donde comieza el FadeOut.
    El 0 es un parpadeo de la imagen durante los Fades, el valor 0 significa que no parpadea, un valor mayor hara que parpadee mas rapido.
    Por ultimo el 255 es la opacidad de la imagen, 255 es sólido, bajando el valor se va opacando la imagen (como si fuera una marca de agua)
    Lo que me gustaria saber es que hay que agregarle a este script para predeterminar el tamaño de la imagen como era en el script ISSI.

    ResponderEliminar
  2. Hola, este script en cuestión no la tiene limitada, me han salido imágenes mas grandes que la propia capacidad del monitor, por lo que puedes agregarle la limitación.

    ResponderEliminar