Support pour Winamp, Windows Media Player, Media Center et VLC.

Création d'un écran de démarrage, affiché au lancement de l'installation


Tutorial pour apprentis

Généralités

Donc nous voici partis. On ne peut pas dire que ce soit difficile de créer un splash screen pour votre installation réalisée avec NSIS (un splash screen c'est une image qui s'affiche au début de l'installation, vous pouvez même jouer un son!). Il faut juste respecter quelques règles de bases , qui ne sont pas nombreuses, il faut qu'en même le relever. Si au bout de 10 minutes vous n'avez toujours rien compris, alors abandonnez directement et brûler d'office votre ordinateur, je ne vois pas ce que vous feriez avec un outils qui vous déstabilise à ce point! (plutôt que le brûler, envoyez-le moi, j'en ferai bon usage!)

Préparatifs

Pour commencer procurez-vous ou créez une image au format bmp (bitmap). Ce n'est pas dur, paint pour commencer le fait très bien (mais vous n'irez pas loin avec paint donc si vous êtes doué, utilisez photoshop ou paint shop pro ou autre qui sont bien plus aptes à faire de belle images que paint). D'une ne prenez pas une image trop grosse en taille de fichier (sinon on perd tout l'intérêt du gain de place de NSIS!), ni trop grande en résolution car une image de 800 par 600 pixels prendra le milieu de l'écran quand l'utilisateur aura une résolution de 1024 par 768 pixels mais débordera si il est en 640 par 480...Au final mettez l'image dans le même dossier que votre script (ce n'est pas obligatoire, mais c'est beaucoup plus simple et ça évite de se tromper)
Vous pouvez aussi (mais vous n'êtes pas du tout obligé) créer un son qui accompagnera votre œuvre! Les consignes sont les mêmes que pour l'image, par trop lourd et pas trop long (évitez de dépasser le temps pendant lequel l'image sera affichée, c'est du plus mauvais effet, enfin à mon goût mais bon faites comme vous voulez!). Pour le format, c'est le wav qu'il faut choisir. Et toujours dans le même dossier c'est plus simple

Le script

Premier réflexe à avoir : créer (s'il elle n'existe pas déjà) une fonction .OnInit. Comment? Rien de plus simple, tapez :

Function .onInit FunctionEnd

Tout ce que vous taperez par la suite ira entre ces deux lignes! Si elles existent déja et qu'il y a déjà quelque chose entre les deux, placez vous juste après Function .onInit.
Ensuite vient le script du splash screen à proprement parler. Tout ce qui, dedans, est en jaune, vous pouvez le modifier, le reste, n'y touchez pas! Les commentaires sont en blanc.

InitPluginsDir ;on initialise le répertoire de démarrage des plugins File /oname=splash.bmp "votre_image.bmp" ;on copie l'image dans l'exe final et on on la met dans le dossier temporaire. File /oname=splash.wav "votre_son.wav" ;idem mais pour le son, si vous ne voulez pas de son, ne mettez pas cette ligne. splash::show 3000 $PLUGINSDIR\splash ;on exécute le plugin, en indiquant que les fichiers s'appellent splash (avec .bmp et .wav) ; on exécute le splash screen, le nombre c'est le temps, en millisecondes, pendant lequel l'image reste affichée. ; 3000 est pas mal, c'est ni trop, ni trop peu. Pop $R0 ;on récupère la valeur de retour : 1, si l'utilisateur a fermé l'écran, 0 si tout s'est bien passé, et -1 si un problème est survenu Delete $PLUGINSDIR\spltmp.bmp ;idem pour l'image Delete $PLUGINSDIR\spltmp.wav ;idem pour le son, si il n'y a pas de son ne mettez pas cette ligne!

Voilà, c'est tout ce que vous avez à faire! Compilez votre script et admirez votre travail! Si vous voulez voir la source du plugin et le fichier d'aide orginal, allez voir dans le dossier Contrib\Splash\, là où vous avez installé NSIS.

Transparence

Vous voulez ajouter de la transparence ? Dans ce cas, utilisez le plugin AdvSplash. Cependant, cela ne fonctionnera UNIQUEMENT si vous l'utilisez sous Windows 2000/XP/2003. Vous êtes prévenus.
Dans ce cas-là, utilisez plutôt la ligne suivante :

advsplash::show 3000 1600 1400 0xFFFFFF $PLUGINSDIR\splash ;les trois paramètres centraux sont : ; 1- le temps d'apparition en fondu ; 2- le temps de disapparition en fondu ; 3- la couleur de transparence en héxadécimal (utilisez -1 s'il n'y en a pas)



Une idée de pas à pas ?

Contactez Julien.