ども、Norimakiです。
今回は久しぶりにPascal Script for Delphi について。
これから作るアプリケーションに標準でスクリプト機能を付けたい
ということで、スクリプト処理部分をクラスにして簡単にスクリプトを
実行させることができるような環境を作ってます。
で、今回はそこでちょっとした壁にぶつかったのでメモ。
その壁というのがタイトルのエラー。
何もスクリプトソースに与えなくても、
実行しただけで上記のエラーが出てくる場合があります。
上記のエラーが起こるのは、uPSC_stdctrls ユニット内である
というところまでは分かったんですが、何故そんなエラーが起こるのか
ということがわかりませんでした。
で、Pascal Script for Delphiについてきたデモを実行してみたら、
普通に実行できるわけです。そんなエラーなんて出てこない。
じゃあ、何が違うんだってことで、ソースを見比べてみたら、
なんと OnCompImport イベント内で設定する
SIRegister_XXXXX
って関数の並び順がそうさせていたという事を発見しました。
ここのイベントは黙って
SIRegister_Std(x); SIRegister_Classes(x, true); SIRegister_Graphics(x, true); SIRegister_Controls(x); SIRegister_StdCtrls(x); SIRegister_Forms(x); SIRegister_Buttons(x); SIRegister_Menus(x); SIRegister_ComObj(x);
これをコピペしときましょ。
ってことなんでしょうかね。
とりあえず、備忘録。
ではでは。
Norimakiでした。