概要 - ActiveX を使用して外部アプリケーションへの接続を確立する(AutoLISP/ActiveX)

ActiveX サポート関数を使用して、ActiveX を利用する他のアプリケーションとの接続を確立することができます。

注: AutoLISP での ActiveX のサポートは Windows のみに制限されています。

たとえば、Microsoft Word の新しいインスタンスを作成したり、既にご使用のコンピュータ上で実行している既存のインスタンスへの接続を確立することができます。

vlax-get-object 関数は、Microsoft Word アプリケーションへの接続を確立し、msw という変数にこのアプリケーションへのポインタを格納します。

(setq msw (vlax-get-object "Word.Application"))

vlax-create-object 関数は、アプリケーション オブジェクトの新しいインスタンスを作成します。たとえば、vlax-get-object 関数からの戻り値が、要求したアプリケーションが存在しないことを示す nil の場合は、vlax‑create-object 関数を使用してアプリケーションを起動できます。次の呼び出しは、Microsoft Word を起動して、変数 msw にアプリケーションへのポインタを格納します。

(setq msw (vlax-create-object "Word.Application"))

代わりに、vlax-get-or-create-object 関数を使用してアプリケーションにアクセスすることもできます。この関数は、アプリケーションの既存のインスタンスへの接続を試み、既存のインスタンスが存在しない場合は、新しいインスタンスを起動します。

アプリケーション オブジェクトの新しいインスタンスを作成した場合は、このインスタンスを表示可能にするまでインスタンスは表示されません。オブジェクトを表示するには、Visible プロパティを TRUE に設定します。たとえば、次の呼び出しは Microsoft Word アプリケーションを表示します。

(vla-put-visible msw :vlax-true)