概要 - MDI 環境で AutoLISP を使用する際の制約(Visual LISP IDE)

MDI 環境で組み込みの AutoLISP 関数を使用するときは、一度に 1 つの図面でのみ作業できます。

注: Visual LISP IDE は Windows でのみ使用可能です。

AutoLISP は、複数の名前空間で変数をやりとりしたり、関数を書き出すことはできますが、たとえば、あるドキュメントの名前空間で関数を実行してから、entmake を呼び出して別のドキュメントの名前空間で図形を作成することはできません。AutoLISP では、複数の図面にわたって情報をアクセスすることはできません。

ActiveX オートメーションを使用すると、複数のドキュメントの名前空間にアクセスできます。一方 AutoLISP では、ActiveX の複数のメソッドにアクセスできます。しかし、ActiveX を使用した複数のドキュメントへのアクセスは、AutoLISP ではサポートされていません。たとえば、ドキュメント A のコンテキストで AutoLISP プログラムを実行しているとき、vla‑put‑activedocument を呼び出すことによって、アクティブなドキュメントをドキュメント B に変更できます。ただし、アクティブなドキュメントを変更すると、ただちにプログラムが実行できなくなります。ユーザがドキュメント A を含んでいるウィンドウをアクティブにすると、プログラムの実行を再開できますが、システムが不安定な状態になり、システムが故障する場合があります。

重要: ActiveX を使用して MDI で作業する場合は、すべての AutoCAD 図面を閉じると、AutoLISP にアクセスできなくなり、例外が発生する可能性があります。