このページは福井県立大学の田中求之が2006年1月まで運用していた Mac のサーバ運用に関する会議室 「Web Scripter's Meeting」の記録です。情報が古くなっている可能性がありますのでご注意ください。

CompileIt! で OSAX

発言者:田中求之
( Date Sunday, January 21, 1996 00:26:59 )


Heizer Software の HyperTalk コンパイラである CompileIt! を使って XCMD
を自作している方であれば、自作の XCMD を CGI のための OSAX として使いた
いと思うのが当然だと思います。

XCMD を OSAX として利用するための方法は、大きく分けると2つあります。一
つは、XCMD を OSAX として使用できるようにしてくれるアダプターを利用する
もの。もうひとつは、CompileIt! で OSAX を作ってしまう、つまり XCMD を 
OSAX に作り替えるというものです。

いずれの方法も、OSAX に関する最低限の知識は必要になります。CompileIt! 
で自作する場合は当然として、アダプターを利用する場合であっても、aete と
いう OSAX の辞書情報を記録したリソースを自分で書かなければなりませんか
ら、このための最低限の知識は必要になるのです。

ここでは、こうした OSAX や aete に関する基礎知識は省略し、どのようにす
るのかを簡単に紹介しておきます。

まずアダプターを利用する方法です。私の知っている限りでは、以下の2つの
アダプターが存在しています。

1:xcmdOSAX ( ftp://gaea.scriptweb.com にあります)

2:XCMD Adapter ( AppleScript Developer's Kit, MacOS SDK に付属)

いずれも、OSAX になっており、この OSAX に XCMD をインストールした上で、
必要なリソース情報を ResEdit で記述していけば、XCMD が OSAX として呼び
出せるようになります。

私が使用していたのは2の XCMD Adapter なのですが、慣れると比較的簡単に
XCMD を組み込めるようになります。1の方は実際に使用したことはないのです
が、ドキュメントやリソースを見る限り、2の方が設定は簡単のようです。た
だ、残念なことは、この XCMD Adapter は、普通では手に入らないということ
でしょうか。いずれ OSAX を作るつもりがあるのなら、AppleScript 
Developer Kit を購入し、とりあえずアダプターを使うというもの悪くないと
思いますが(私の場合がそうでした)、アダプターのためだけに Dev kit や 
MacOS SDK (Developer Mailing に含まれるようになりました)を購入するの
は高すぎますね。

1のツールの方は使っていませんが、使用されている方がいらっしゃいました
ら、レポートをよろしく。なお、こちらには、Frederic Rinaldi 氏の XCMD が
最初から組み込まれていますので、自分の XCMD を組み込まなくても、けっこ
う使えるツールかもしれません。


CompileIt! は v2.5 になって、XCMD 以外のコードリソースもコンパイルでき
るようになりましたので、CompileIt! を使って OSAX を作ってしまうことが可
能です。

当然の事ながら、OSAX の流儀にしたがってパラメーターを受け取ったり、結果
を返すスクリプトにする必要があります。このため、AppleEvent のデスクリプ
タなどの知識が要求されることになります。また、データの処理の中で 
HyperCard のコールバックが呼ばれることのないように気を付ける必要があり
ます。テキスト・コールバックを使用している部分は、コンパイル時に 
CompileIt! がエラーとして指摘してくれますが、文字列比較のようなバイナ
リ・コールバックが呼ばれる部分では、気を付けないとそのままコンパイルさ
れてしまい、実行時にシステムエラーを起こす原因になるようです。この点は
気を付けてください。

コンパイルが終わって osax リソースができたら、ResEdit でそれを OSAX 
ファイルに移し、アトリビュートを変更し、リソースの名前を決められた書式
にしたがって変更し、aete リソースを記述する、という手順を踏むことになり
ます。

私も、やっと OSAX のコンパイルができるようになったところなので(実は
Tanaka's osax が始めてコンパイルした OSAX です (^_^;; )、まだ試行錯
誤している状態です。

なお、OSAX 作成のための参考文献で、日本語で読めるものとしては、

1:『Macintosh プロフェッショナル・プログラミング』(トッパン)
  デーブ・マーク著 (\5,800) ISBN4-8101-8941-4

2:Inside Macintosh Volume VI 日本語版 (アジソンウエスレイ)
  アップルコンピュータ (\35,000)

があります。後者は、Inside Mac の旧シリーズ最後の巻の翻訳ですが
AppleEvent に関して知識を得るには手頃だと思います。ただし、値段が
全然手頃ではありませんし、今では本屋にも無いかもしれませんが (^_^;

もちろん、Inside Mac の新シリーズの Interapplication Communication
を読破するという真っ当な方法もあります。


シーちゃん(しのはら改め) さんからのコメント
( Sunday, January 21, 1996 13:39:37 )

田中さんへ
さっそくの情報提供ありがとうございます.
xcmdOSAX と『Macintosh プロフェッショナル・プログラミング』を
とりあえず入手しようと思います.
OSAXのリソース情報やデータのやりとりに関しては自分で出来る限り調べるつもりですが
困り果てたときはまたよろしくお願いいたします.
何か成果が上がりましたら,お目にかけたいと思います.