|
秀CapsのVersion 10.8を今アップロードしました。
32bit版:
http://hide.maruo.co.jp/software/bin3/hcaps1080_signed.exe
64bit版:
http://hide.maruo.co.jp/software/bin3/hcaps1080_x64_signed.exe
ウィンドウのタイトルが非常に長い場合に保護違反で落ちてしまう可能性があ
りました。
言い訳になりますが。、GetWindowTextで全角文字を含むウィンドウタイトル
を取得しようとすると、最後がNULL文字で終わらない文字列が返ってくる可能性
があるという、Windowsのバグじゃないかと思う現象のせいになります。
ウィンドウタイトルが"あああ"となってる時に、たとえば
char sz[9];
memset( sz, 'A', sizeof(sz) - 1 );
GetWindowTextA( hwnd, sz, 4 );
とすると、szには"ああ"の4バイトがNULL文字無しで返ってきて、結果、szが
"ああAAAA"のようになってしまうという感じです。それで最終的にバッファオー
バーランが発生する可能性があり、実際、秀丸エディタのデバッグバージョンで
特定のファイルを開いた時に落ちてしまってました。
秀丸担当がさらに調べた所、ユニコードのウィンドウに対してGetWindowTextA
するとNULL文字で終わらない可能性があるということで、たぶんDefWindowProcW
のバグだろうという話です。
マイクロソフトさん直してくれないかな…。
|
|