From: Sadayuki Sakamoto Date: 1997-04-30T09:40:15+09:00 Subject: [ruby-list:2879] Re: how to init class? 酒本と申します。 >前田です。 > >Librettoの調子がおかしくてハイバネしまくっています。 ># クロックアップしてるので春の陽気にやられたのかもしれません。 >というわけで今はもっぱらNTをさわっているのですが、WIN32のGUI用 >の拡張モジュールを作りたいと思いたちました。 ># cursesはほったらかしてあります。ごめんなさい。 はずしてるかもしれませんが、 私は以前、Windows95のGUIバージョンのrubyにトライしたことがあります。 どこまでやったかと申しますと、 (1) 任意のDLL中のAPIをコールする拡張モジュールを作った。  あとは全てruby でクラスを作ろうと考えました。 (2) main()ではなく、WinMainから始まるrubyを作った。 ruby の終了時のexit(1)をreturnに変え、ruby の環境をそのままに WinMainに帰り、CallBack させようとした。 (1) はできましたが、全てrubyの皮を被せるならクラスではなく、 モジュールにしたほうが良かったかもしれません。前田さんのように いきなり組込みモジュールのように使えるクラスにするなら話しは別です。 (2)は語尾でおわかりのように、CallBackで挫折しました。ruby のパッケー ジが古すぎたようです。あとやり方が強引過ぎたかもしれません。 もっとも、できたとしてもOSから上がってくる全てのメッセージについて ruby をコールする方法ではオーバヘッドが大きくて実用にならなかったか もしれません。 このような経過から、前田さんのプロジェクトに大変興味があります。 -- 酒本定幸 KDD 交換サービス技術部 03-3347-6675 sakamoto@tsc.sjk.kdd.co.jp