WinBinder, développement d'applications Windows en PHP
Découvert via l'article GUIs with PHP and Winbinder, WinBinder est une extension PHP qui permet de créer des applications Windows (win32) avec PHP. L'extension propose toute une série de fonctions permettant la création des contrôles (fenêtre, menu, barre de statut, etc...) et l'intéraction avec le système, tout le reste étant fait via l'immense bibliothèque de fonctions et d'extensions de PHP (comprenant PEAR et PECL).
L'avantage de WinBinder par rapport à PHP-GTK, PHP/TK ou wxPHP est qu'il est spécifique à Windows et qu'il se base directement sur l'API Windows ; il en résulte donc une plus grande rapidité d'exécution et les applications ainsi créées se comportent comme de véritables applications Windows ("look and feel").
Installation
La marche à suivre pour une installation minimale est la suivante ; nous n'allons copier que les fichiers réellement nécessaires au bon fonctionnement de WinBinder :
- Télécharger la dernière version de PHP si vous ne l'avez pas - PHP5 est recommandé mais WinBinder est aussi disponible pour PHP4 ;
- Télécharger la dernière version de WinBinder (sur le site de PECL car la version disponible sur le site de WinBinder ne fonctionnait pas chez moi) ;
- Extraire les fichiers suivants de l'archive de PHP et copiez-les dans le répertoire
C:/PHP
par exemple :php5ts.dll
etphp-win.exe
; - Copier les fichiers
PHP/PHP5/php.ini
etPHP/PHP5/ext/php_winbinder.dll
de l'archive de WinBinder respectivement dansC:/PHP/
etC:/PHP/ext
; - Créer un répertoire
C:/PHP/includes
et copier les fichiersCode/inc/*
de l'archive de WinBinder dedans ; - Modifier les valeurs
include_path
etextension_dir
du fichierphp.ini
de la manière suivante :include_path = ".;C:/PHP/includes"
etextension_dir="C:/PHP/ext"
;
Vous pouvez maintenant lancer une application WinBinder (fichier avec une extension .phpw
) en utilisant la ligne de commande suivante (sous DOS) :
C:/PHP/php-win.exe "helloworld.phpw"
Pour améliorer et automatiser le lancement de nos applications, nous allons ajouter une action sur les fichiers d'extension .phpw
dans la base de registre de Windows afin de lancer l'exécution sur une double-clic sur un tel fichier :
- Télécharger le fichier
winbinder-registry.reg.txt
; - Le renommer en
winbinder-registry.reg
; - L'ouvrir et le modifier en conséquence si vous n'avez pas installé PHP dans
C:/PHP
; - Double-cliquer dessus pour l'importer dans la base de registre.
Vous pouvez maintenant lancer une application WinBinder en double-cliquant dessus !
Exemple
L'exemple ci-dessous est le premier des exemples présentés sur le site de WinBinder, il s'agit de l'inévitable "Hello World !" :
<?php // Une application Windows en seulement trois lignes // Inclusion de la librairie WinBinder (en plus de l'extension) include "winbinder.php"; // Création de la fenêtre de l'application wb_create_window(NULL, PopupWindow, "Hello world!", 480, 320); // Entrée dans la boucle d'attente des messages (actions effectuées) wb_main_loop(); ?>
En lancant l'application, on obtient le résultat suivant :
Ressources
Pour finir, voici quelques ressources interressantes pour bien comprendre et utiliser WinBinder ; n'hésitez pas à faire part d'autres liens :
- WinBinder: A native Windows binding for PHP, le site officiel de WinBinder ;
- Winbinding your PHP (PDF), un aperçu des possibilités de WinBinder ;
- winbinder resources, classes et exemples d'applications ;
- Wild Php, des composants utiles pour la programmation PHP sous Windows.
Bons développements !
Commentaires
-
madvic a écrit le 23/11/2005 :
Super intéressant, il va falloir que j'essaye cela vite fais !
Merci pilgrim ;-) -
Dayd a écrit le 06/12/2005 :
Yo
Trop cool vite je m'y mets :)
Ajouter un commentaire
Il n'est plus possible de réagir à cette entrée directement mais si vous pensez que votre intervention peut être intéressante, envoyez-moi votre commentaire, je l'ajouterai ici en votre nom.