accSCR 2024.09.03

トップフォルダを指定して、それ以下のサブフォルダを含むすべての DWG または DXF ファイルを対象とするモードを追加しました。

■概要

 AutoCAD に同梱されているコンソール版の AutoCAD である AcCoreConsole.exe 用のスクリプトを作成、実行するツールです。
 AcCoreConsole.exe については、こちら↓の記事が分かりやすいです。
 AutoCAD 雑学:図面のサムネイル画像 - Technology Perspective from Japan (typepad.com)
 ※AcCoreConsole.exe は、AutoCAD のライセンスが無くても使えます。



■使い方

 [EXE] ボタンから AutoCAD(acad.exe) と同じフォルダにある accoreconsole.exe を
 登録して下さい。
 ※ DWG TrueView に同梱されている accoreconsole.exe は AutoLISP が使用出来ません。

 [DWG,DXF] ボタンをクリックして対象のファイルを選択するか、
 対象のファイルをリストボックスにドラッグ&ドロップして下さい。
 ファイル名は終了時に "accSCRFileList.txt" に保存され、次回起動時に再現されます。
 ※起動時に存在しないファイル名は削除されます。

 ファイルリストの実行順は、[▲],[▼] ボタンで上下、[X]ボタンで削除できます。
 マルチセレクトに対応しています。

 ・[SCRIPT] タブ

  [順次処理] ボタンをクリックすると、登録したファイルリスト順に、
  ファイル名とスクリプトを起動オプションに追加して、accoreconsole.exe を起動、終了を
  繰り返します。
  最大起動数は 1 で、前回の終了を待って次の処理を実行します。
  順番が重要な印刷出力等に向いています。

  [並行処理] ボタンをクリックすると、登録したファイルリスト順に、
  並行処理時の最大起動数を超えない起動数でファイル名とスクリプトを起動オプションに追加して、
  accoreconsole.exe を起動、終了を繰り返します。
  並行してほぼ同時に処理をするのでその分速いです。

  [順次処理]、[平行処理]とも、起動中の accoreconsole.exe は終了させて下さい。
  何も起動されていない状態(起動数 = 0)でないと実行できません。
 
  スクリプトの最後は必ず quit + 空行で終了して下さい。
  毎回 accoreconsole.exe を起動しているため、
  非表示で起動している時は見えない accoreconsole.exe が残ることになります。 

  起動数が 0 に戻らない場合は、PC を再起動すれば消えます。
  必要であれば、[CTRL] + [ALT] + [DELETE] またはタスクバーを右クリックで
  タスクマネージャーを起動し、バックグラウンドプロセスの中からAcCoreConsole を探し、
  マウス右クリックのメニューから「タスクの終了(E)」を選択すると、終了します。
  
  スクリプトの quit 前に copyhist を追加すると、[COPYHIST] タブにコマンド履歴が追加されます。
  ※インターバル時間、クリップボードの状況により取得できないことがあります。
   [並行処理] の場合、辛うじて1つの履歴だけが取得されます。

 ・コマンドプロンプト 表示:
   [毎回表示] をチェックすると、ファイルリストの数だけコマンドプロンプトが表示されます。
   [最後だけ表示] をチェックすると、ファイルリストの最後だけコマンドプロンプトが表示されます。

 ・エディター
  [Ctrl] + [S] キーで上書き保存。
  [Ctrl] + [/] キーで選択行のコメント追加、削除。
  その他、Windows 標準の [Ctrl] + [A], [C], [X], [V] ... が使えます。
  ※ [Ctrl] + [/] は完璧ではないので注意してください。

  拡張子 .scr、.lsp ファイルのドラッグ&ドロップに対応しています。
  lsp ファイルの時は、(load "xxx,lsp") の1行が追加されます。
  ※ LOAD できる LISP はサポートフォルダにある LISP だけのようです。
  ※ (vlax-get-Acad-Object) は nil を返すようです。

  マウス右クリックのポップアップメニューから特殊文字(スペース、改行、空行...)の
  表示・非表示を変更できます。
  スペース、空行の確認に使えます。
  [EOF} マークは表示されません。行番号で確認して下さい。

  " " で囲まれた文字列、AutoLISP 関数は強調表示されます。
  対応括弧の強調表示には対応していません。

 
■スクリプト

 基本的には、コマンドラインに入力する文字列を1行ごとに記述します。
 コマンドラインの入力が -PLOT でも、スクリプトは PLOT でないと動かなかったりします。
 "-" 付きのコマンドは注意が必要です。

 ※ AutoCAD に付属する accoreconsole.exe では AutoLISP が使えます。
 ※ DWG TrueView に付属する AcCoreConsole.exe では AutoLISP は使えません。

 スペース、改行、空行は [Enter] と同じです。
 スクリプトの最終行は空行が必要です。
 先頭が ";" で始まる行はコメント扱いになります。

 [SCRIPT] タブで使う起動オプション用のスクリプトは、
 毎回 accoreconsole.exe を終了させるため、最後に "quit"+ 空行 が必要です。
 accoreconsole.exe を起動した状態でスクリプトを実行する場合、上記は不要です。

■開発環境

 Delphi 10.4 professional
Windows 11
 accoreconsole.exe (AutoCAD 2025 付属)

■著作権、免責事項

 本ツールの著作権は、作者 f.izawa が所有し、これを主張します。
 本ツールをダウンロード、解凍、使用したことによる事故、損害等の一切について作者はその責を負いません。
 ご自身の責任においてお使いください。
 
■ダウンロード

 最新版:
 http://www.izawa-web.com/zip/accSCR20240903.zip

 旧バージョン:
 http://www.izawa-web.com/zip/accSCR20240820.zip

■作者連絡先

 e-mail: f.izawa@dream.com
 URL: http://www.izawa-web.com/

■履歴

 2023.08.22
  初版作成

 2023.08.23
  アイコン化されたウィンドウがアクティブにならないのを手直し
  ウィンドウの取得、ファイルのドラッグ&ドロップの不具合を手直し
  LSP ファイルのドラッグ&ドロップを追加
 
 2023.08.23.1
  テスト用スクリプトで quit 以下の行を無視するチェックボックスを追加
  コマンド送信のタイミングを調整

 2023.08.23.2
  ファイル名に半角スペースが含まれている時、期待通りに動かないのを手直し

 2023.08.24
  [テスト] タブのエディターで [Ctrl]+[S] できなかったのを手直し
  [テスト] タブに [履歴取得] ボタンを追加
  エディターの [Ctrl]+[/] で選択行のコメント化、削除を追加

 2023.08.25
  [SCRIPT] タブのスクリプトに copyhist がある時、コマンド履歴を
  [COPYHIST] タブに表示を追加

 2023.08.25.1
  [並行処理] (高速モード)ボタンを追加
  終了時、ファイルリストを同じフォルダの "accCSRFileList.txt" に保存するを追加

 2024.08.20
  Windows 11 で機能しないため [テスト] タブを削除

 2024.09.03
  「トップフォルダを選択」タブを追加