« 【講座】HSPよく使うフレーズ 第32回 スコア表示 | メイン | 【よみもの】もーりおのつぶやき 第11回 »

2007年06月26日

【講座】HSP3ワンポイントテクニック 第23回

このコーナーでは、HSP3の変わった使用例や、気付きにくい機能
などを紹介していきたいと思います。

今回は、HSPのスクリプトをコンパイルして実行するための
スクリプトを紹介します。なんだか、ややこしいですが、要するに
HSPのスクリプトファイルを指定すると、それを実行してくれる
という機能を持ったソフトを作れるということです。
HSPの基本的な機能は、hspcmp.dllという外部ファイルに収められて
いて、これはHSPからプラグインとして呼び出すことが可能です。
つまり、スクリプトエディタで用意されているHSPメニュー関連の
機能はすべてプラグイン命令として呼び出せるわけです。
使い方は、アイデア次第だと思いますが、知っておくと役立つ日が
くるかもしれませんよ。
以下のスクリプトは、「test.hsp」というスクリプトを実行する
(スクリプトエディタで[F5]キーを押すのと同じ)サンプルです。

#include "hspcmp.as"

sdim mesbuf,$10000
sdim rtname,256

fname="test.hsp" ; スクリプトファイル名
objname="obj" ; オブジェクトファイル名

hsc_ini fname
hsc_objname objname
hsc_comp 0 ; コンパイル
res=stat:if res!=0 : dialog "ERROR" : goto *goerror

hsc3_getruntime rtname, objname ; ランタイム名を取得
if rtname="" : rtname="hsp3.exe"
debug_mode=0 ; デバッグウィンドウ表示フラグ

cmdexe = dir_exe+"\\"+rtname+" "+objname
hsc3_run cmdexe, debug_mode ; ランタイムを実行する
*goerror
hsc_getmes mesbuf
objmode 1
mesbox mesbuf,636,446,5
stop

いままでは、この機能を持ったhspcmp.dllは、自由に配布できない
規定でしたが、7月のリリースが予定されているHSP3.1からは、
配布の制限が緩和されているので、自分のソフトなどで自由に使ったり
配布したりできるようになります。
今から、何ができるか考えてみるのも、いいかもしれません。

(おにたま)

投稿者 usuaji : 2007年06月26日 01:30

口臭チェッカー市場