[ 新規に投稿する ]

Hidemaru_EvalMacro の命令の誤りで、完全停止すべきではないNo.10390
こみやんま さん 21/05/11 05:44 [ コメントを投稿する ]
  Hidemaru_EvalMacro の命令中に誤りがあった際に、いきなりマクロ全体が終了するのは、かなり筋が悪いように思われます。
(むしろこのdll実行途中でのEval内容誤記による突然のマクロシャットダウンが原因で秀丸全体が不安定になりやすいです)

たとえば、Hidemaru_EvalMacro("message 1;");
といった命令がC言語のdll中に存在すると、該当行実行で突然マクロが終了しdllの実行も該当ステップで停止してしまいます。

Hidemaru_EvalMacroはもともと成否が返ってくるわけですから、
マクロ全体をストップさせるのではなく、Hidemaru_EvalMacro("命令内容")の命令内容相当の続行をとりやめ、
失敗を意味する返り値を返し、dllは継続続行とかの方が安定するように思えます。
[ ]
RE:10390 Hidemaru_EvalMacro の命令の誤りで、完全停止すべきNo.10392
秀丸担当 さん 21/05/11 10:07 [ コメントを投稿する ]
 
Hidemaru_EvalMacroで、マクロのエラーがあったときは、確かにそれ以降のマクロの実行はされないようになっています。
Hidemaru_EvalMacroから抜けた後はDLLの関数そのものの実行は継続されて、DLLの関数を抜けた後、秀丸エディタ本体側のマクロは継続されず終了するようになっています。
エラーになったらHidemaru_EvalMacroの返り値でFALSE(=0)を返したほうがいいので、0を返すように修正します。
[ ]

[ 新規に投稿する ]