Lors d’une conversion d’un projet “Service Windows” de la version 17 à la 19, nous avons été confrontés à un problème plutôt gênant. Après plusieurs recompilations, nous avons recommencé quelques fois la procédure d’installation sans toucher à la configuration existante afin d’essayer de les résoudre. Voici la liste des “bugs” rencontrés lors des différentes tentatives. Nous n’avions pas encore eu ce type d’erreur dans nos projets d’applications classiques, pourtant eux aussi convertis depuis une version précédente.
GetLastError() a renvoyé 87
Nous sommes donc repartis sur un installateur de type “autonome”, au format “archive auto-extractible”. Nous avons essayé plusieurs créations, aussi bien au format de compression 7z que ZIP. Au moment d’installer le service sur une machine exécutant Windows Server 2008 R2, l’installateur a affiché l’erreur suivante : “getLastError a renvoyé 87”. L’installation s’arrête en indiquant que le service est installé, cependant nous avons constaté qu’il manquait le framework ! Le fichier auto-extractible pesait à peine 12 mo au format 7z.
Pour résoudre ce problème :
- Supprimez le ou les fichiers “.WDF” du répertoire du projet.
- Réinitialisez la configuration en supprimant le dossier PROJET.CPL.
- Créez l’installation au format ZIP.
Nous n’avons plus obtenu l’erreur par la suite lors de nouvelles tentatives d’installation sur la machine cible. De plus, nous avons pu constater que le fichier pesait alors 26 mo au format 7z et jusqu’à 34 mo au format ZIP.
Impossible d’écrire dans le fichier “(…)ReplicSyncro.wx”
Autre erreur plutôt bizarre, qui apparaissait alternativement : “impossible d’écrire dans le fichier “ReplicSyncro.wx”. Le chemin d’accès spécifié est introuvable”. Alors que la réplication est désactivée dans le projet (rien n’a été défini dans l’éditeur de réplications), notre installateur tente pourtant d’écrire dans un fichier qui n’existe pas. Nous n’avons pas inclus les utilitaires “ReplicSyncro” ni “ReplicEdit”.
Pour résoudre le problème, nous avons effectué la même opération : supprimez les fichiers de configuration de la procédure d’installation (ceux qui portent l’extension .WDF) puis essayez de créer un nouvel installateur.
Impossible de créer le répertoire “<>>”
Après avoir résolu tous les problèmes précédents, nous avons eu un dernier message d’erreur lors de l’installation. Celui-ci semble provenir du fait que les fichiers soient compressés au format 7z. Aucune explication n’a encore été obtenue de la part de PC SOFT.
Pour résoudre ce problème :
- Supprimez le ou les fichiers “.WDF” du répertoire du projet.
- Réinitialisez éventuellement la configuration en supprimant le dossier .CPL.
- Créez l’installateur en utilisant le format ZIP et non pas au format 7z.
Lorsque nous avons effectué cette opération, l’installation a été effectuée avec succès sur le poste client. Il semblerait donc qu’il y ait un problème à ce niveau, du moins lorsqu’on repart d’un projet converti. Nous n’avons pas testé en repartant de zéro.
Exception “Erreur création archive auto-extractible”
Cette exception a été levée lorsque nous avons tenté de créer un installateur de type différent. En effet, à la fin de l’assistant de création, vous avez le loisir de choisir la manière dont vous souhaitez générer le ou les fichiers (ex : “répertoire unique”, “archive auto-extractible”, etc.
Après avoir généré le groupe “_FRAMEWORK”, WinDev s’est planté à chaque tentative en affichant un message d’erreur.
Pour résoudre ce problème, nous avons simplement supprimé le fichier “.WDF” ce qui nous a permis de créer proprement l’installateur.
Pour la prochaine mise à jour ?
Nous en avons profité pour signaler ces problèmes au support technique, et même si nous avons trouvé une solution “temporaire” pour les régler, nous espérons que cela pourra sera corrigé par un patch.
Mise à jour du 14/2/2014 : certains problèmes liés à l’installateur devraient avoir été corrigés dans la version 190040g. Si ce n’est pas le cas, le support invite bien sûr à le signaler par e-mail ou même sur les forums.