PHP5 で WinBinder を利用する
WinBinderを利用すると、PHPでWindowsアプリを作ることができる。
WinBinderにはインストーラ(WinBinder: DownloadsのWinBinder Setup)が用意されており、それを使用すればWinbinderとPHPの両方をインストールしてくれるので手軽にWinアプリ開発環境が構築できる。
しかし、PHPをWindowsにインストールで述べたように、すでにPHPの環境を構築している場合、
というわけで、WinBinderをマニュアルインストールし、すでにインストール済みのPHPから利用することにした。
WinBinder: Downloadsから WinBinder Libraries (winbinder_0.43.164.zip) をダウンロードし、C:\WinBinder に展開した。
すでにインストールしているPHPを活かすのであれば、C:\PHP\ext に php_winbinder.dll をコピーして php.ini に
一応ダイアログを閉じた後はプロンプト内にてバージョン情報が表示されるが、その前に「PHP Warning: PHP Startup: Unable to load dynamic library 'C:/PHP/ext\php_winbinder.dll' - 指定されたプロシージャが見つかりません。」というエラーが出力されている。
これを回避するには、WinBinder: Downloads の All local files セクションから wb_dll_0.43.168.zip をダウンロードし、このアーカイブ内に含まれる php_winbinder.dll をコピーして使えば良い。
コマンドプロンプトで php -v を実行してエラーが表示されなければOKだ。
次にWinBinderのサンプルを動かしてみる。
コマンドプロンプトを開き C:\WinBinder\phpcode\examples に移動し、
これにて WinBinder の利用が可能になった。
ダブルクリックで起動できるように、拡張子 .phpw を php-win.exe に関連付ける。
C:\WinBinder\phpcode\examples にはその他にもいろいろサンプルが用意されているので、起動して確かめてみると良いだろう。
もう少し便利にするには、php.ini の include_path に C:\WinBinder\phpcode\include を加えておくと良い。そうすれば、
WinBinderは手軽にWindowsアプリを作成できるPHPライブラリだが、いまのところドキュメントがほとんど無い状態。マニュアルを探してもWinBinderのホームページぐらいにしか見つけられなかった。そのマニュアルも関数リファレンスなど若干説明不足では無いかと思われるので、もっと充実させて欲しいと思う。ただ、サンプルのソースコードは読みやすいので、それらがマニュアルを補足する役割になっているのだろうと思う。
インストール
WinBinderにはインストーラ(WinBinder: DownloadsのWinBinder Setup)が用意されており、それを使用すればWinbinderとPHPの両方をインストールしてくれるので手軽にWinアプリ開発環境が構築できる。
しかし、PHPをWindowsにインストールで述べたように、すでにPHPの環境を構築している場合、
- 2つのPHPバイナリを持つ事になり管理が面倒である
- WinBinder以下のPHPを再度設定する必要がある
というわけで、WinBinderをマニュアルインストールし、すでにインストール済みのPHPから利用することにした。
WinBinder: Downloadsから WinBinder Libraries (winbinder_0.43.164.zip) をダウンロードし、C:\WinBinder に展開した。
すでにインストールしているPHPを活かすのであれば、C:\PHP\ext に php_winbinder.dll をコピーして php.ini に
extension=php_winbinder.dllを追記すれば良いのだが、winbinder_0.43.164.zip に含まれる php_winbinder.dll をコピーし、コマンドプロンプトから php -v を実行してみると、「php.exe - エントリ ポイントが見つかりません: プロシージャ エントリ ポイント _zval_copy_ctor がダイナミック リンク ライブラリ php5ts.dll から見つかりませんでした。」というエラーダイアログが表示され利用できなかった。
一応ダイアログを閉じた後はプロンプト内にてバージョン情報が表示されるが、その前に「PHP Warning: PHP Startup: Unable to load dynamic library 'C:/PHP/ext\php_winbinder.dll' - 指定されたプロシージャが見つかりません。」というエラーが出力されている。
これを回避するには、WinBinder: Downloads の All local files セクションから wb_dll_0.43.168.zip をダウンロードし、このアーカイブ内に含まれる php_winbinder.dll をコピーして使えば良い。
コマンドプロンプトで php -v を実行してエラーが表示されなければOKだ。
(2006.6.12追記)
2006.6.9に WinBinder-0.46αバージョン がリリースされていました。
このバージョンの場合、WinBinder-0.46.0.zip 内に含まれる php_winbinder.dll をコピーすれば使えるようです。
2006.6.9に WinBinder-0.46αバージョン がリリースされていました。
このバージョンの場合、WinBinder-0.46.0.zip 内に含まれる php_winbinder.dll をコピーすれば使えるようです。
動作テスト
次にWinBinderのサンプルを動かしてみる。
コマンドプロンプトを開き C:\WinBinder\phpcode\examples に移動し、
php hellow.phpwを実行すると、「Hellow world!」というタイトルのウィンドウが表示される。
これにて WinBinder の利用が可能になった。
関連付け
ダブルクリックで起動できるように、拡張子 .phpw を php-win.exe に関連付ける。
- マイ コンピュータを開き、[ツール]-[フォルダ オプション]から[ファイルの種類]を表示させる。
- 「新規」ボタンを押してファイルの拡張子に「phpw」を入力する。
- するとリスト中に何にも関連付けられていない PHPW が表示されるので、それを選択し「変更」ボタンを押す。
- [一覧からプログラムを選択]し[ファイルを開くプログラムの選択]ダイアログボックスで「参照」ボタンを押し、C:\PHP\php-win.exe を選択する。
- 「この種類のファイルを開くときは、選択したプログラムをいつも使う」にチェックを入れて終了。
C:\WinBinder\phpcode\examples にはその他にもいろいろサンプルが用意されているので、起動して確かめてみると良いだろう。
カスタマイズ
もう少し便利にするには、php.ini の include_path に C:\WinBinder\phpcode\include を加えておくと良い。そうすれば、
include('winbinder.php');
を書くだけで PATH を気にせずに WinBinder ライブラリを利用できる。感想
WinBinderは手軽にWindowsアプリを作成できるPHPライブラリだが、いまのところドキュメントがほとんど無い状態。マニュアルを探してもWinBinderのホームページぐらいにしか見つけられなかった。そのマニュアルも関数リファレンスなど若干説明不足では無いかと思われるので、もっと充実させて欲しいと思う。ただ、サンプルのソースコードは読みやすいので、それらがマニュアルを補足する役割になっているのだろうと思う。
(2006.6.12追記)
WinBinderの docs フォルダの中にHTML形式とCHM形式のマニュアルが用意されていました。
両方ともホームページと同じ内容であると思われます。
WinBinderの docs フォルダの中にHTML形式とCHM形式のマニュアルが用意されていました。
両方ともホームページと同じ内容であると思われます。
この記事へのコメント