外部コマンドを定義する
 
 
 
ページの底部

外部コマンドは AutoCAD の動作中に他のプログラムやユーティリティを起動します。

AutoCAD を実行中に、次のような他のプログラムやユーティリティを呼び出すことができます。

外部コマンドを入力すると、コマンド定義ファイル acad.pgp 内のコマンドが検索されます。 acad.pgp の最初のセクションには外部コマンドの定義があります。ASCII テキスト エディタ([メモ帳]など)で acad.pgp ファイルを編集することによってコマンド定義を追加できます。acad.pgp には、コマンドのエイリアスのほか、セミコロンで始まるコメント行も含まれます。コメント行を使用して、ファイルの変更日時や最終改訂者などの文字情報を acad.pgp に記入することができます。

注:acad.pgp を編集する前にまずバックアップを作成し、必要があれば後で復元できるようにしておきます。

外部コマンドを定義するときは、コマンド プロンプトに対して入力するコマンド名とオペレーティング システムに渡される実行可能なコマンド文字列を指定します。外部コマンド セクションの各行は、次のように 5 つのフィールドで構成され、各フィールドをカンマ(,)で区切ります。

command,[executable],flags[,[*]prompt[,return_code]] 
command

コマンド プロンプトに対して入力するコマンドです。この名前が AutoCAD 組み込みコマンド名のときは無視されます。大文字と小文字は区別されません。

executable

コマンド名を入力すると、この文字列がオペレーティング システムに送られます。オペレーティング システムのプロンプトで実行できる任意のコマンドを指定できます。文字列には、スイッチやパラメータを含めることができます。この文字列の大文字と小文字が区別されるかどうかは、実行しているアプリケーションによって異なります。

flags

省略できないビットコード パラメータ。必要な結果が得られるように、次の整数値を任意の組み合わせで加算します。

0 アプリケーションを起動し、終了するまで待機します。

1 アプリケーションの終了を待ちません。

2 アプリケーションを最小化して実行します。

4 アプリケーションを表示せずに実行します。

8 引数の文字列をクォーテーション(")で囲んで使用します。

ビット値 2 と 4 は排他的な関係にあり、両方のビットをセットすると、ビット 2 だけが使用されます。ビット値 1 をセットしないでビット値 2 か 4 をセットするのは避けてください。アプリケーションが完了するまで AutoCAD が使用できなくなるためです。

ビット値 8 をセットすると、del のようなコマンドを実行したときに、スペースが含まれているファイル名に対して適切に動作させることができます。これにより、スペースで区切られたファイル名のリストをこのようなコマンドに渡せなくなります。複数のファイルをサポートする場合は、ビット値 8 をセットしないでください。

prompt

これは、オプション フィールドです。AutoCAD のコマンド ラインまたはダイナミック入力ツールチップに表示されるプロンプトを指定します。このプロンプトに対する応答は、実行文 フィールドに指定する文字列の後ろに追加されます。プロンプト フィールドの最初の文字をアスタリスク(*)にすると、応答にスペースを含めることができるようになります。この場合、応答を終了するには[Enter]を押します。アスタリスク(*)を含めないときは、[Spacebar]または[Enter]を入力して応答を終了します。プロンプトを指定しないと、入力は要求されません。しかし、リターンコードを指定するときやプロンプトの後ろにスペースを表示したいときは、後ろにカンマ(,)を指定する必要があります。

return_code

省略可能なビットコード パラメータ。必要な結果が得られるように、この整数値を任意の組み合わせで加算できます。たとえば、値 12 が必要なときは、リターン コードに 3 を指定します。値は、次のように定義されています(コード 04 はウィンドウ環境では無意味であるため、含まれません)。

1 DXB ファイルをロードします。AutoCAD は、コマンドの終了後に、$cmd.dxb という名前の DXB ファイルを図面にロードします。DXB ファイルがロードされると、$cmd.dxb ファイルは削除されます。この動作は、DXBIN[DXB 読み込み]コマンドと同じ結果になります。

2 DXB ファイルからブロック定義を作成します。AutoCAD は $cmd.dxb というファイルからブロック定義を作成します。プロンプト フィールドへの応答はブロック名に使われます。この名前は、現在の図面に存在しない有効なブロック名でなければなりません。したがって、このモードでは既に定義されているブロックを再定義できません。AutoCAD が DXB ファイルをロードすると、$cmd.dxb ファイルは削除されます。INSERT[ブロック挿入]コマンドの既定のブロック名は、新しく定義されたブロックの名前になります。

このファイルには、セミコロン(;)を前に付けることでコメント行を挿入することができます。

Windows システム コマンド

Windows システム コマンドの startcmd は、外部コマンドを定義するとき、非常に役に立ちます。startcmd コマンドを使用しないで実行文の文字列を指定すると、そのウィンドウを閉じるまでは AutoCAD を使用できません。

start コマンドは、新しいウィンドウを開き、指定したプログラムやコマンドを実行します。パラメータを指定しないで start コマンドを使用すると、新しい[コマンド プロンプト]ウィンドウが開きます。start コマンドには、多くの新しいウィンドウの表示に影響する多くのコマンド ライン スイッチを指定できます。Windows アプリケーションを起動するには、どのスイッチも指定しないで start コマンドを使用してください。start コマンドは、アプリケーションに関連付けられたドキュメントを開く場合も非常に役に立ちます。たとえば、ワード プロセッサで作成したドキュメントや HTML ファイルを、start を使用して直接開くことができます。

cmd コマンドは、AutoCAD のシェルとして動作する[コマンド プロンプト]ウィンドウを開きます。このウィンドウは、AutoCAD のコマンド プロンプトにコントロールを戻す前に閉じなければなりません。/c および /k コマンド ライン スイッチが、外部コマンドに対して役に立ちます。/c スイッチは、指定したコマンドを実行して、終了します(ウィンドウが閉じます)。/k スイッチは、指定したコマンドが実行された後も継続します(ウィンドウは開いたままです)。/k スイッチを使用した場合は、[コマンド プロンプト]ウィンドウを(exit コマンドを使用して)閉じなければなりません。

一般的に、AutoCAD とは別の処理を行う新しいウィンドウやアプリケーションを起動するには、start を使用してください。新しいウィンドウを作成しないバッチ ファイルやコマンド スクリプトを実行する場合や、AutoCAD にコントロールを戻す前に閉じなければならないウィンドウを作成するには、cmd を使用してください。これらのコマンドとスイッチの詳細は、Windows システム コマンドに関するマニュアルを参照してください。

カスタム定義コマンド

次の例では、新規に 3 つのコマンド RUN、LISTSET、DXB2BLKを定義します。

RUN, cmd /c,0,*実行するバッチ ファイル: ,
LISTSET,cmd /k SET,0
DXB2BLK,cmd /c DXBCOPY,0,DXB ファイル名: ,2

RUN コマンドは、バッチ ファイルやコマンド スクリプトを実行します。cmd コマンドの後に /c スイッチを指定しているため、[コマンド プロンプト]ウィンドウを開き、バッチ ファイルを実行し、その後ウィンドウを閉じます。

LISTSET コマンドは、現在の DOS 環境変数の設定を表示します。この例では start ではなく cmd /k を使用しているため、AutoCAD に戻る前に[コマンド プロンプト]ウィンドウを閉じなければなりません。このウィンドウをアクティブなままにしたい場合は、start /realtime を使用してください。これらのコマンドとスイッチの詳細は、Windows システム コマンドに関するマニュアルを参照してください。

DXB2BLK コマンドは、指定された DXB ファイルからブロック定義を作成します。DXB ファイルでは、すべてのオブジェクトが線分に変換されます。この処理に付随するメリットは、文字オブジェクトを線分に簡単に分解できることです。

DXB2BLK は指定された DXB ファイル名を dxbcopy バッチ ファイルに渡します。このバッチ ファイルは渡されたファイル名をファイル名 $cmd.dxbにコピーします。 その後 AutoCAD は指定された DXB ファイルからブロックを作成します。DXB ファイル プロンプトに対して指定した名前が、新しいブロック名として使用されます。dxbcopy.cmd ファイルを作成するには、Windows コマンド プロンプトに対して次のコマンドを入力してください。

echo copy %1.dxb $cmd.dxb > dxbcopy.cmd 

これにより、現在のフォルダに dxbcopy.cmd ファイルが作成されます。このファイルをユーザの DOS のパス定義で指定されているフォルダに移動するか、ファイルの場所を acad.pgp ファイルに明示的に指定します。たとえば、dxbcopy.cmd ファイルが D:¥cad にある場合は、acad.pgp ファイルの外部コマンド セクションに次のように入力します。

DXB2BLK, cmd /c D:¥CAD¥DXBCOPY,0,DXB ファイル名: ,2

DXB ファイルを作成するには、現在のプリンタとして[AutoCAD DXB ファイル]形式を指定してから、ファイルに出力します。プリンタの設定の詳細は、『ドライバ/周辺機器ガイド』の「プロッタとプリンタのセットアップ」を参照してください。

操作方法
プログラム パラメータ ファイル(acad.pgp)を開くには
クイック リファレンス
コマンド