samedi, décembre 9 2006

Ce matin, sur #postgresql

Petite discussion entre deux personnes sur #postgresql ce matin :

[09:26] <guy1> VB sucks
[09:26] <guy1> i wish i never learned it
[09:26] <guy2> guy2; I agree, but its the cobol of this decade

J'ai anonymisé les noms mais je n'ai pas modifié les messages... Je suis en total accord avec eux.

mardi, août 31 2004

NSIS : fin de la création de l'installeur

J'indiquais sur ce billet qu'il me manquait encore quelques fonctionnalités sur NSIS que j'avais sur InstallShield. Entre autres, il y avait l'enregistrement de composants VB6, du pilote ODBC de PostgreSQL et des modifications sur les bases de registre.

Pour le premier point, au lieu de demander un « scan » de votre projet VB, éditez-le avec notepad ou gvim (oui, il existe sous Windows :-) ). Vous y trouverez la liste des OCX et autres DLL que vous devez enregistré. La commande
!insertmacro InstallLib REGDLL $ALREADY_INSTALLED REBOOT_NOTPROTECTED "msvbvm60.dll" "$SYSDIR\msvbvm60.dll" "$SYSDIR"
vous copiera et enregistrera la DLL msvbvm60.dll. Copiez ce code pour les autres OCX et DLL dont vous avez besoin et le tour est joué. Pour plus de détails, voir la documentation utilisateur de NSIS.

Le pilote ODBC a été plus dur. Le seul moyen que j'ai trouvé a été de lancer l'installation du fichier MSI du pilote (disponible sur le site du projet psqlodbc). Pour cela, utilisez la commande
msiexec.exe /i psqlodbc.msi /qn
/i pour demander une installation et /qn pour demander une exécution silencieuse. La définition des arguments en ligne de commande de msiexec.exe est disponible sur le site du MSDN.

Les lectures/écritures sur la base de registre sont très simples. Là aussi, tout se trouve dans la documentation utilisateur de NSIS.

Un point que j'avais négligé concerne l'ajout d'interface personnalisée mais cela se réalise assez facilement avec l'outil HM NIS EDIT.

En tout cas, je vais certainement pouvoir jeter InstallShield rapidement :-)

vendredi, août 20 2004

Intégration d'OpenOffice.org dans un projet Visual Basic

Cela fait maintenant plusieurs jours que j'essaie d'intégrer OpenOffice.org (notamment le traitement de texte) dans nos projets VB. Cela n'a pas été sans soucis mais je crois avoir réussi à remplacer Word :-) .

À part quelques liens, je ne donnerais qu'une astuce. Si vous galérez trop avec l'API d'OpenOffice.org dans votre projet VB, pensez à créer une macro que vous exécuterez à partir de VB. Cela a une grande importance car toutes les fonctions ne sont pas disponibles à partir de VB, notamment celles concernant le « dispatcher ». En utilisant une macro, vous pourrez utiliser tous les exemples traînant sur différents sites dont OpenOffice Macros and API.

Pour finir, voici les quelques liens dont je viens de parler. Vous avez évidemment l'API des documents texte et des feuilles de calcul. Voici aussi quelques astuces récupérées sur le forum des macros :

Dernier point, un site particulièrement important dans le domaine des macros pour OpenOffice.org est celui de Pitonyak où vous trouverez son livre et ses macros (disponible en français au format OOo et au format PDF).