HmJreSelect.dllでエラーメッセージが白紙No.39707
fzok4234 さん 22/05/09 21:26
 
こんばんは、毎度お世話になっております。


さて、HmJreSelect.dll から呼び出した正規表現 DLL でエラーが発生したとき、そ
のエラーメッセージが
真っ白になってしまう不具合がありました。

まず、HmJreSelect.dll および hmonig.dll を秀丸エディタのインストールディレク
トリにインストールした上で
.HmJreSelect ファイルを次のように設定して、「動作環境」から正規表現 DLL を H
mJreSelect.dll に変更して
おきます。

 [DllSelector]
 (?#hmonig)=hmonig.dll

そして、適当な内容のタブを開いた状態で検索ダイアログを開き、「正規表現」有効
にして以下の検索パターンで
検索を実行します。

 (?#hmonig)(?u)(?<a>\g<a>a)

これは hmonig.dll において構文エラーとなるもので、これをわざと実行します。す
ると、F3 キーを押すたびに
白紙のメッセージボックスが出てきてしまいます。

このため、hmonig.dll の本来のエラーメッセージが表示できないために構文エラー
に関する詳細情報が得られず、
マクロでの searchdown などの使用や 強調表示の *.hilight ファイルや .HmJreSel
ect 設定ファイルなどへの
正規表現パターンのコーディングを行うときのデバッグ作業に著しく支障を来してお
ります。

どうか修正のほうよろしくお願いします。


環境は、
 ・秀丸エディタ    : 9.15β4 Float x64
 ・hmonog.dll      : 0.8.7.0
 ・HmJreSelect.dll : 0.2.0
です。



[ ]
RE:39707 HmJreSelect.dllでエラーメッセNo.39709
秀丸担当 さん 22/05/10 09:39
 
確かに何もエラーメッセージがないものが出ることが確認できました。
HmJreSelect.dllは、選択されたDLLのエラーメッセージをそのまま渡しているだけに
なっています。
hmonig.dllでは、このパターンでは何もエラーメッセージが無いエラーになっている
ようで、それがそのまま表示されることになっています。
念のため秀丸エディタ本体として、何もメッセージが無い場合は、メッセージが無い
ことや、エラー番号などを表示するようにしておこうと思います。

[ ]
RE:39709 HmJreSelect.dllでエラーメッセNo.39710
fzok4234 さん 22/05/10 09:59
 
> HmJreSelect.dllは、選択されたDLLのエラーメッセージをそのまま渡しているだけ
>になっています。
> hmonig.dllでは、このパターンでは何もエラーメッセージが無いエラーになってい
>るようで、
> それがそのまま表示されることになっています。

どうやら、hmonig.dll の最新版の 0.8.7.0 自体に発生した不具合のようです。「動
作環境」で
正規表現 DLL を明示的に hmonig.dll に切り替えたところ、白紙のメッセージボッ
クスが出てくることを
確認できました。

hmonig.dll の以前のバージョンではちゃんとメッセージが表示されていました。最
近、秀丸エディタ用の
アドオン DLL などをまとめて最新版にアップデートしたため、HmJreSelect.dll 側
の不具合だと
思い込んでおりました。

お騒がせして大変失礼いたしました。



[ ]
RE:39710 HmJreSelect.dllでエラーメッセNo.39712
h-tom さん 22/05/10 22:12
 
h-tom です。

>どうやら、hmonig.dll の最新版の 0.8.7.0 自体に発生した不具合のようです。
>「動作環境」で
不具合ではなく意図的にやってます。(変更したのは、かなり前ですが)

[ ]
RE:39712 HmJreSelect.dllでエラーメッセNo.39714
fzok4234 さん 22/05/11 12:56
 
> 不具合ではなく意図的にやってます。(変更したのは、かなり前ですが)

以前は、例えば
 (?#hmonig)(?u)(?<separator> ++)a\g<separater>b
というような \g<> のスペルミス ( -or と -er の間違い ) などがあれば
 「部分式 separater は宣言されていない。」
という趣旨の英語での具体的なメッセージが表示されていた気がします。そのおかげ
で、正規表現パターンの
デバッグも行いやすかったです。

今回、なぜ詳細なエラーメッセージを廃止したのか理由が全く分かりませんが、デバ
ッグに著しく
支障を来すようになったのは確かです。できればメッセージの復活を望むところであ
ります。どうか
よろしくお願いいたします。



[ ]
RE:39709 HmJreSelect.dllでエラーメッセNo.39718
fzok4234 さん 22/05/14 12:05
 
> 念のため秀丸エディタ本体として、何もメッセージが無い場合は、メッセージが無
>いことや、
> エラー番号などを表示するようにしておこうと思います。

素早い対応ありがとうございます。9.15 正式版にて、正しくエラー番号が
メッセージボックスに表示されていることを確認できました。


[ ]