続・64ビット環境でスクリプトを実行する
前回の記事を書いた後、思った事、それは
無いなら作れ!
マイクロソフトが作らないなら勝手に作ればいい
…という訳で、64ビットで動作するMicrosoft Script Control(msscript.ocx)互換のTablacus Script Control 64を作ってみました。
このソフトはMicrosoft Script ControlとクラスIDやDISPIDを合わせているので、インストールすれば、32ビットで動作していたスクリプトそのままで、64ビット環境でほぼ動作します。
また、あふw作者のAKTさんにあふwの64ビット版の&SCRIPTの無効化を外してテストしてもらいました。感謝!
AKTさんの協力もあり、DelphiのTScript.Create()でも動作します。
Delphiから動作するようにするには、IScriptControl 以外に IOleObject, IPersistStreamInit, IOleControlを実装する必要がありました。
タイプライブラリはまだ作成していないのですが、Microsoft Script Controlに合わせて作成しているので、参照から作成する必要がある場合は代わりにmsscript.ocxを参照できれば上手く動くかも…
64ビット スクリプト コントロール Tablacus Script Control 64
プログラムのコードに付いてはTablacus Script Control 64のソースをご覧ください。