FelicaとBiz/Browserを連動するには2通り方法がある。
1.Biz用のDLLを作成
2.外部EXEとBiz/Browserを連携
このうち2番目の方法でCV.netはFelica連携を実現している。
1番目の方法の場合にはレジストリにDLLを登録する必要があるためである。
Biz/Browserのソースからは以下のように外部イベントを使用して呼び出している。
Biz/Browserの技術者が見たらお分かりのとおり、単純にイベントリスナーで受け取るだけである。
受け取ったe.paramにFelica固有のIDが入っているので、それをアプリ側で利用する。
(例えばLOGINの変わりにFelicaを使えば、ID,PASSで認証させるよりはるかにセキュリティが高くなる。セキュリティ意識の高くないユーザはID=社員ID,PASS=同じなどの設定で使ってしまいがち。Felicaなら確実に一意のIDが振られかつカードにはそのIDは印字されていないのでユーザが自分のIDを知ることなく本人認証させることが可能)
CVnetFelica.exeはエンドユーザに販売するアプリケーションに組み込まない限りフリーとしている。
ダウンロード先は以下のとおり。
(Biz/BrowserとFelicaのドライバ両方インストール済の環境でなければ動作しない)
http://www.dtpnet.jp/download/CvnetFelica.exe
MD5チェックサム
(308bd9c93b5cc2884af4ef2280cad5ea CvnetFelica.exe)
236 KB (241,664 バイト) Win2K,WinXP両用
1.Biz用のDLLを作成
2.外部EXEとBiz/Browserを連携
このうち2番目の方法でCV.netはFelica連携を実現している。
1番目の方法の場合にはレジストリにDLLを登録する必要があるためである。
Biz/Browserのソースからは以下のように外部イベントを使用して呼び出している。
/* Felica読取可能にする */
var wrk_ev = new EventSender;
try{
wrk_ev.PostExternalEvent("cvnet_felica","biz","Start","");
}
catch(e){
MessageBox("Pasoriが立ち上がっておりません。n終了します。");
}
/* Felicaにカードがおかれたらイベントを取得する */
EventListener bizfelica{
/* CvnetFelica.exeからのイベントを受け取る */
Service="cvnet_biz";
PortID="biz2"; /* PortIDはなんでもよい */
Function OnCardSet(e){ /* FelicaID専用 */
/* カードがおかれたときの処理 ログインなど e.param にFelicaのIDが入っている */
}
Function OnCardReset(e){
/* カードがはずされたときの処理 通常なにもしない */
}
if(!$DESIGNTIME){
try{
StartListen();
}
catch(e){
}
}
}
var wrk_ev = new EventSender;
try{
wrk_ev.PostExternalEvent("cvnet_felica","biz","Start","");
}
catch(e){
MessageBox("Pasoriが立ち上がっておりません。n終了します。");
}
/* Felicaにカードがおかれたらイベントを取得する */
EventListener bizfelica{
/* CvnetFelica.exeからのイベントを受け取る */
Service="cvnet_biz";
PortID="biz2"; /* PortIDはなんでもよい */
Function OnCardSet(e){ /* FelicaID専用 */
/* カードがおかれたときの処理 ログインなど e.param にFelicaのIDが入っている */
}
Function OnCardReset(e){
/* カードがはずされたときの処理 通常なにもしない */
}
if(!$DESIGNTIME){
try{
StartListen();
}
catch(e){
}
}
}
Biz/Browserの技術者が見たらお分かりのとおり、単純にイベントリスナーで受け取るだけである。
受け取ったe.paramにFelica固有のIDが入っているので、それをアプリ側で利用する。
(例えばLOGINの変わりにFelicaを使えば、ID,PASSで認証させるよりはるかにセキュリティが高くなる。セキュリティ意識の高くないユーザはID=社員ID,PASS=同じなどの設定で使ってしまいがち。Felicaなら確実に一意のIDが振られかつカードにはそのIDは印字されていないのでユーザが自分のIDを知ることなく本人認証させることが可能)
CVnetFelica.exeはエンドユーザに販売するアプリケーションに組み込まない限りフリーとしている。
ダウンロード先は以下のとおり。
(Biz/BrowserとFelicaのドライバ両方インストール済の環境でなければ動作しない)
http://www.dtpnet.jp/download/CvnetFelica.exe
MD5チェックサム
(308bd9c93b5cc2884af4ef2280cad5ea CvnetFelica.exe)
236 KB (241,664 バイト) Win2K,WinXP両用
さて、このFelicaの記事を拝見してふと思ったのですが、こうした外部モジュールとの間でのイベント授受を定義できるということは、結構いろいろなプラグインモジュール的なものが作れてしまうのかなぁ、と思ったのです。たとえばユーザーのWindowsログアウトをフックして画面をロックするとか、ちょっと飛躍しますが通信機能を持ったモジュールからメッセージ受信をフックするとか。こういうのってありなのでしょうか?
Bizの導入事例の中にもありますが、
http://www.axissoft.co.jp/biz/introductory_ex/iwatani02.html
Bizでできない部分を外部のプログラムにやらせて連携をとるという方法は普通に使われています。
https://cialisbnb.com/# buy cialis very cheap prices fast delivery