Top/マニュアル/文法/A.WindowsDLLとしてのYAYA
  トップページへ   [ 一覧 | 検索 | 最終更新 ]   [ 差分 | 履歴 ]

#navi(マニュアル/文法)

#contents

*概要 [#ja5d0838]
「やや」と読みます。文字列処理を行なうためのDLLです。
C言語に似た文法を使用して、

-与えられた文字列を加工する
-プログラムした規則に拠って文字列を生成する

といった処理を行なうことが出来ます。
YAYAはWindows DLLですので、直接利用するためには、プログラミングに関する知識がある程度必要です。


*環境 [#ca7d9a37]
Windows用です。~
SSPと同じ開発環境、つまりWindows 95でも動くと思われる設定で構築していますが、動作報告をいただけると助かります。


*エクスポートしている関数 [#ye0e5ed7]
文は以下の公開された関数を持っています。
文を利用するプログラムは、文をLoadLibraryした後にこれらの関数を実行して所望の処理を行ないます。

#code(c,nooutline,nolink,nonumber){{
extern "C" __declspec(dllexport) BOOL __cdecl load(HGLOBAL h, long len)
}}
文に初期化を指示します。~
文をLoadLibraryして使用を開始する直前に、この関数を一度だけ必ず実行してください。~
hには「文がカレントとして認識するディレクトリ絶対パス」を、lenはhの長さを渡してください。
hの領域開放は文側で行ないますので、呼び出し側では使い放しでかまいません。
#code(c,nooutline,nolink,nonumber){{
extern "C" __declspec(dllexport) BOOL __cdecl unload()
}}
文に終了を指示します。~
文をFreeLibraryする直前に一度だけ実行してください。
#code(c,nooutline,nolink,nonumber){{
extern "C" __declspec(dllexport) HGLOBAL __cdecl request(HGLOBAL h, long *len)
}}
文に処理を指示し、結果を得ます。~
hには処理対象の文字列を、*lenにhの長さを渡してください。
渡したhの領域開放は文側で行ないますので、呼び出し側では使い放しでかまいません。
処理結果は戻り値で得られます。処理結果の長さは*lenに格納されています(つまりこの値は書き換えられます)。
戻り値を取得した後、領域を*lenで示されるサイズで開放(GlobalFree)してください。

なお、これはデスクトップマスコットソフトウェア「伺か」で使用される擬似AI用DLL「SHIORI」
のインタフェース規格と完全に同一のものです。


*利用規定 [#d695caea]

-同梱のドキュメントに従ってください。
-LICENSE システム関数により、YAYAの利用しているライブラリのライセンス条文の表示が可能です。


#navi(マニュアル/文法)