TForm クラスとその「キャプション」プロパティを登録してから、グローバル変数を登録します。
NewGlobal := DwsUnit.Variables.Add;
NewGlobal.Name := 'MainForm';
NewGlobal.DataType := 'TForm';
NewGlobal.OnReadVar := GlobalReadProc;
GlobalReadProc コード:
GlobalReadProc(Info: TProgramInfo;var Value: Variant);
begin
TVarData(Value).VType := varUnknown;
IUnknown(TVarData(Value).VUnknown) := TForm(Form1);
end;
スクリプトで MainForm 変数プロパティを呼び出します
MainForm.Caption := ''DWS Script in work'';
DWScript は例外を示します:
インターフェイスはサポートされていません。
私は何を間違っていますか?(VarCopySafe プロシージャでその型キャストを見たので、IUnknown を使用します。VType が varUnknown でない場合は例外が発生します)