この掲示板は AutoCADマクロ屋本舗 の掲示板です。

【 注意 】最初に必ず ↓↓ 下記内容 ↓↓ を参照ください。
① マクロが分からない方は、まず 【 マクロ講座 】 を参照ください。
② 質問の前に 【 マクロ使用前の注意事項 】 をお読みください。
③ 質問する時は、新規投稿フォーム下の【 新規投稿時のお願い 】を必ずお読みください。

TdMacrosについて
TdMacrosファイルについて

Windowsnのアップデートをしたからなのか
TdMacrosファイルを開くと文字化けが発生しており、lispが上手く起動しなくなりました。
対策を教えてください。

以下のように文字化けしています。
エンコードをUTF-8やShift JISなどに変更してみましたが直りませんでした。

AutoCAD PROTECTED LISP file
"萎`ヨ 3・kウC隗ヘ]ン゙ノq`0鋓箏・ョ・]但遨&"d・=Jm暿・w€`ュ>\ワリナ・ッw擔ネ珮ヲ#'##f莪8{X㌢・k7iD4・ルO ゚・tチェ_・M・娵ツ矼・ワ儼ツ荀,xメ・laァ!#+3F筮5CッU・JエIコx盜゙キOセ]・
4HクaカTノ邂}メツ犒r・oー mソV・"d頌テァoン哲晥デ「!b・ミ“ッ+7Nセ_・6CサWハZ濡逎n肅・゚・`イ v・dゥ'/w蓚ッ゙・4HーA「e耋サW・*tタJ坙-P・Rタ莟*:T・ィ4]ヤ゚・"!,9[法!&-.=Sャyメ紘オOセ^ンヨネアKy『弃ホ晥掩ツセ・TX#コ・*tハシPェuハスB、a」)6LーN。c」)3
sニッ}モ・a゚レロヨタ蓚スHケZセ]・
<bォ0 8P€!b・0Y辿罌a・ t講・Wタ牀<Q・ `珮肅遖+vトエI鯨ワラニ碎゚・ h」"0i。$h・^・"d頌テァoン典ヘ・}予゚・]ホ・Dィst・nンヨ゙レ・,b蓁ヤ」g・ロ・7d頌テァoユリヤンハオ閣ネケM鈹) )<Qムトhレ・6LクQ掛・E莚{゙・D鬧.|レ・,pマ「eョ< yメヒ・
=pタ。c跫錥・_ハioソA「!#2#LクQ・j・NシY・Z・
4Hクp厭・X・Zト薰SナォuPoツ[;慰レミユホ。・ス{賂 鐇ル$8・ツ.゙a@7・ y・ヨホ・Rヌ。 /p各セwニ越啖・

  • TH
  • 2025/03/04 (Tue) 09:44:16
Re: TdMacrosについて
TdMacros.lspは暗号化されたファイルなので、通常のテキストエディタで開いた場合、文字化けした状態になるのが正常です。

lispがうまく作動しないのは、別の原因だと思います。
lispがうまく作動しないというのは、TdMacros.lspが動かず、setenv、getenvを含むマクロが動作しないということですか?
  • LUNE
  • 2025/03/04 (Tue) 09:56:08
Re: TdMacrosについて
仰る通り、TdMacros.lspが動かず、setenv、getenvを含むマクロが動作しないです。
  • TH
  • 2025/03/04 (Tue) 13:04:17
Re: TdMacrosについて
管理タブ→アプリロード→TdMacros.lspを選んでロードをクリック
こうしてから、コマンドラインに「setenv」と入力してみてください。
コマンドラインに、「変数名を入力:」と表示されますか?
  • LUNE
  • 2025/03/04 (Tue) 13:09:22
Re: TdMacrosについて
「変数名を入力:」と表示されます。
  • TH
  • 2025/03/04 (Tue) 13:26:45
Re: TdMacrosについて
ということは、TdMacros.lsp自体がおかしくなっているわけではなさそうです。
管理タブ→アプリロード→右下のスタートアップ登録→内容
アプリケーションのリストに、TdMacros.lspはありますか?
  • LUNE
  • 2025/03/04 (Tue) 16:03:07
Re: TdMacrosについて
確認してみたところありました。
サポートファイルの検索パスにて参照しているフォルダ内にTdMacros.lspを保存しています。


図面を読み込んだ際に下記のコメントがコマンドラインに表示されます。関係ありますか。


『AutoCAD 2018 形式のファイルを開いています。
モデルを再作図中。


AutoCAD メニュー ユーティリティ がロードされました。コマンド行でsetenvとgetenvを使用できます。<www.cadic.co.jp>*キャンセル*』

また、『s:::startup-load』とコマンドラインに入力された状態で待機状態の様になります。
  • TH
  • 2025/03/05 (Wed) 08:11:17
Re: TdMacrosについて
>AutoCAD メニュー ユーティリティ がロードされました。コマンド行でsetenvとgetenvを使用できます。<www.cadic.co.jp>*キャンセル*
これだけを見ると、TdMacros.lspはちゃんとロードされているようです。

その他にスタートアップ登録しているLispはありますか?
また、acad.lspファイルはカスタマイズされたことはありますか?
  • LUNE
  • 2025/03/05 (Wed) 09:11:57
Re: TdMacrosについて
Lispについてはかなりの数を登録しています。

例えばですが下記のLispが起動しなくなりました。

;Shusei Hayashi
;OffshoreCad&Management Inc.
;10F Jaka Bldg., 6780 Ayala Ave.,
;Makati, Philippines
;http://www.offshorecad.com.ph/
;http://www.offshore-management.com.ph/

(defun c:SD_1208()
(if (= SD:Lang "E")
(princ "\n Change decimals")
(princ "\n 寸法に表記する小数点の数を変更")
)
(princ "\n **********************************")
(setq *error* *myerror*)
(SD1028)

(RegistryRead_1208)
(Show_Dialog_1208)

(setq ObjSet nil)
(while (= ObjSet nil)
(setq ObjSet (ssget '((0 . "DIMENSION"))))
)
(if ObjSet
(setq ObjSet (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object))))
)
(vlax-for Obj ObjSet
(cond ((= TheDecimal "0") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionZero))
((= TheDecimal "1") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionOne))
((= TheDecimal "2") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionTwo))
((= TheDecimal "3") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionThree))
((= TheDecimal "4") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionFour))
((= TheDecimal "5") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionFive))
((= TheDecimal "6") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionSix))
((= TheDecimal "7") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionSeven))
((= TheDecimal "8") (vlax-put-property Obj 'PrimaryUnitsPrecision acDimPrecisionEight))
)
(vlax-put-property Obj 'SuppressTrailingZeros "False")
)

(SD2056)
(setq *error* nil)
(princ)
)

;********************************
(defun Show_Dialog_1208()
(setq dcl_id (load_dialog "SD_1208.dcl"))
(if (= SD:Lang "E")
(new_dialog "SD_1208" dcl_id)
(new_dialog "SD_1208_J" dcl_id)
)

(setq DecimalL (list "0" "0.0" "0.00" "0.000" "0.0000" "0.00000" "0.000000-(6)" "0.0000000-(7)" "0.00000000 -(8)"))

(start_list "Decimal")
(mapcar 'add_list DecimalL)
(end_list)

(set_tile "Decimal" TheDecimal)

(action_tile "accept" "(get_data_1208)(done_dialog 1)")
(action_tile "cancel" "(done_dialog 0)")
(setq Act (start_dialog))
(unload_dialog dcl_id)
(if (= Act 0) (exit))
)

;********************************
(defun get_data_1208 ()
(setq TheDecimal (get_tile "Decimal"))
;レジストリ書込み
(vl-registry-write Path1208 "Decimal" (get_tile "Decimal"))
TheDecimal
)

;**********レジストリからデータを取得*************
(defun RegistryRead_1208()
(setq Path1208 "HKEY_CURRENT_USER\\Software\\SpeedDraftLT\\SD_1208")
(if (vl-registry-read Path1208 "Decimal" )
(setq TheDecimal (vl-registry-read Path1208 "Decimal" ))
(setq TheDecimal "0")
)
)
;共通コマンド
(defun SD1028 ()
(setq OldCmdEcho (getvar "CMDECHO"))
(setvar "CMDECHO" 0)
(command "undo" "be")
(setq OldOsmode (getvar "OSMODE"))
(setq OldLayer (getvar "CLAYER"))
(setq OldLType (getvar "CeLType"))
(setq OldCeLWeight (getvar "CeLWeight"))
(setq OldColor (getvar "CeColor"))
(setq OldOrtho (getvar "ORTHOMODE"))
(setq OldDStyle (getvar "DIMSTYLE"))
(setq OldExpert (getvar "Expert"))
(setvar "EXPERT" 0)
(setq Path_Lang "HKEY_CURRENT_USER\\Software\\SpeedDraftLT")
(if (vl-registry-read Path_Lang "SD_Language" )
(setq SD:Lang (vl-registry-read Path_Lang "SD_Language" ))
(progn (setq SD:Lang "J")
(vl-registry-write Path_Lang "SD_Language" "J")
)
)
(princ)
)
;********************************
(defun SD2056 ()
(setvar "OSMODE" OldOsmode)
(command "undo" "end")
(setvar "CLAYER" OldLayer)
(setvar "CeLType" OldLType)
(setvar "CeLWeight" OldCeLWeight)
(setvar "CeColor" OldColor)
(setvar "ORTHOMODE" OldOrtho)
(setvar "Expert" OldExpert)
(if (and (/= (getvar "DIMSTYLE") OldDStyle)(tblsearch "DIMSTYLE" OldDStyle))
(command "-dimstyle" "Restore" OldDStyle)
)
(princ "\n (C)OffshoreCad&Management")
(setvar "CMDECHO" OldCmdEcho)
(princ)
)

;********************************
(defun *myerror* (msg)
(setq *error* nil)
(SD2056)
(princ "\n Error in SpeedDraftLT")
(princ)
)
(if (= SD:Lang "E")
(princ "\n Command Name: SD_1208 \n")
(princ "\n コマンド名:SD_1208 \n")
)
(princ)
  • TH
  • 2025/03/05 (Wed) 14:29:27
Re: TdMacrosについて
上記、貼り付けた際に気づいたのですが
URLの様なものが含まれておりました。
なぜ含まれたのかはわかりませんが。。。

URLの様な所まで消去すれば正常に起動しました。

お騒がせして申し分けありませんでした。
  • TH
  • 2025/03/05 (Wed) 14:36:01
Re: TdMacrosについて
話が最初と変わっているような・・・

>TdMacros.lspが動かず、setenv、getenvを含むマクロが動作しないです。
と書かれていたのに、

>例えばですが下記のLispが起動しなくなりました。
とLispが動作しないという話になってます。
マクロは動作するようになったのでしょうか?

なんにせよ解決してよかったですが、
>URLの様なものが含まれておりました。
>なぜ含まれたのかはわかりませんが。。。
このURLは、Lispの配布元サイトなのでは?
なので、最初から書かれていたと思われますが・・・

  • LUNE
  • 2025/03/05 (Wed) 15:27:27
Re: TdMacrosについて
TdMacros.lspが動かず、setenv、getenvを含むマクロが動作しないと思っていたのですが
私の勘違いでした。申し訳ありません。
確認と説明をしていただく中で上記が間違いで、Lispが動作していないものだとわかりました。

URLが含まれている件に関しては
AutoCADに登録した当初は中身の確認をしていなかったので
最初から含まれていたものかどうかわかりません。
ですが、今まではLispが普通に作動いていたので気にしていませんでした。

ありがとうございました。
  • TH
  • 2025/03/05 (Wed) 16:27:09
Re: TdMacrosについて
>URLの様な所まで消去すれば正常に起動しました。

これも勘違いだと思います。
URL部分はコメントアウトされていますので、(行頭に;が付いている)
その部分に何が書いてあっても、LISPの動作には影響しません。

なので、これを消したから正常に動いたと思うのは現実的ではありません。
>今まではLispが普通に作動いていた
これが何よりの証拠です。

>Lispについてはかなりの数を登録しています。
原因はこっちじゃないでしょうか?

>また、『s:::startup-load』とコマンドラインに入力された状態で待機状態の様になります。
このエラーも、沢山のLISPをロードすることでトラブっていた可能性は考えられますが、
それが、上記のURLと関係しているとは思えません。
  • Hamu
  • 2025/03/05 (Wed) 17:41:17

返信フォーム






プレビュー (投稿前に内容を確認)