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 et php-win.exe ;
  • Copier les fichiers PHP/PHP5/php.ini et PHP/PHP5/ext/php_winbinder.dll de l'archive de WinBinder respectivement dans C:/PHP/ et C:/PHP/ext ;
  • Créer un répertoire C:/PHP/includes et copier les fichiers Code/inc/* de l'archive de WinBinder dedans ;
  • Modifier les valeurs include_path et extension_dir du fichier php.ini de la manière suivante : include_path = ".;C:/PHP/includes" et extension_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 :

Fenêtre de l'application helloworld.phpw

Ressources

Pour finir, voici quelques ressources interressantes pour bien comprendre et utiliser WinBinder ; n'hésitez pas à faire part d'autres liens :

Bons développements !

Posté le Wednesday 23 November 2005 dans , .

Commentaires

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.