INASOFT 管理人のひとこと


フリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。
2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。
・INASOFT Webサイト: https://www.inasoft.org/
・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/
本業の方のお仕事が再び忙しくなりつつあるので、断続的にしばらく更新が止まることがあります。

目次 | ←前へ / 2019-07-07 00:00 / 次へ→ / 最新へ⇒

■RegisterHotkey()のエラー時の対処を入れないとなぁ

2019/ 7/ 7 0:00:00


RSSRSS配信中

https://www.inasoft.org/








先日、RegisterHotkey()の大昔の仕様変更に緊急対応したわけなのですが、当たり前なことにRegisterHotkey()はエラーの場合には、きちんとエラーであることを示す戻り値を返すようになっています。

例えば、他のアプリケーションで、すでに当該ホットキーが使われている場合など。

しかし残念ながら、現時点では、「マウスのお供」「NumLockLock」「コピペテキスト修飾除去」では、エラーがあっても無視して次処理へ突き進むようになっています。
うーむ、今後、何かしらの対処はしたいところ。ワーニングメッセージを出すとか。

とはいえ、例えば「マウスのお供」がスタートアップで起動する設定になっていたとして、複数のHotkey登録エラーが起きた場合、OS起動と共に常駐開始するシチュエーションで、エラーメッセージを連発表示するのも、なんだかとってもウザそうな気がする。

たぶん、後からまとめて報告するような仕様になっているのがよさそう。

同じように、設定ダイアログからのホットキー割り当てでエラーが起きた場合、中途半端に処理を止めてしまうと、おかしなことになる。
ホットキーの設定処理は、設定ダイアログに並んでいる順番に、



1. 設定ダイアログを開くホットキー
2. メモ編集を開くホットキー
3. 時計等の表示ON/OFFの切替のホットキー
4. 時計等の表示ONのホットキー
  :
  :
7. クリップボード文字列から就職を除去するホットキー
8. 残時間表示のON/OFFの切替のホットキー



の順で設定されるわけだけど、3番目でエラーが起きる場合、2まではホットキー登録されるけど、4以降はホットキー登録されないという中途半端になる。かといって、ロールバック処理を構築するのも面倒くさい。

どうするのがスマートかは、ちょっとゆっくり考えることにしたいところ。


例えば、「コピペテキスト修飾除去」で利用しているOS機能「バルーン表示」(Windows 10の場合は「トースト通知」)を使って、警告表示を行いつつも処理を続行し、ユーザーは任意で無視することもできるようにするとか。

(エラーではなくワーニング扱いなので、ユーザーに状況を伝えつつ、処理を続行する)

こんなイメージ。

201907_tosuto1_image.jpg

201907_tosuto2_image.jpg

トースト表示の場合、表示できる行数は限られていますので、2つ以上のホットキー重複があった場合は全てのメッセージが読めません。が、読まずとも自体は把握できるとは思いますので、これでもよいかなぁと思います。

んでは、バルーン表示/トースト表示のためのプログラムを「マウスのお供」「NumLockLock」に移植しておくかなぁ。




目次 | ←前へ / 2019-07-07 00:00 / 次へ→ / 最新へ⇒


目次の表示:


ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメールフィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。
当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。本ページは公開から1年半後の任意のタイミングで削除される予定です。




2554514 (+0214)[+0573]

Copyright© 2010-2021 INASOFT