INASOFT 管理人のひとことフリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。 2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。 ・INASOFT Webサイト: https://www.inasoft.org/ ・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/ 2022年7月下旬より再び本業多忙化してきているため、更新頻度は落ちます。 [2022/7/24 19:32] Tweet ■「コピペテキスト修飾除去 v1.50.00β」「NumLockLock v1.40.00β」更新のお知らせ2016年 8月 8日(月) 2:02:17 [さくらのブログから転記] |
RSS配信中 | |
本日付で、「コピペテキスト修飾除去 v1.50.00β」「NumLockLock v1.40.00β」の2ソフトを更新しました。 どちらも、作者としては新たに開拓した技術を使っているということで、β版扱いにしてあります。 ダウンロードは、トップページからどうぞ。 別件で、「英数キー」(Shiftキーと同時に押すと「Caps Lock」になるキー)の取り扱いについて調べている過程で、ショートカットや一部キーの監視など、現在、DLLを作成してグローバルフックにより実現している機能について、「ホットキー」(RegisterHotKey API)により、もっと簡易に実現できる方法があるのではないかと気づきました。 そこで、実験的に「ホットキー」を使うようにしたバージョンを作成し、公開してみたというわけです。 特に問題なければ、この方法の方が色々とシンプルですので、こっちの方法にしてみようかと思っています。 さて、その別件の課題なのですが、「英数キー」を「左コントロールキー」に置換するというもの。 普通に考えれば、レジストリをいじってScancode Mapを作成して再起動すれば事足りそうなのですが、一部のシンクライアント上からWindows上へ繋いでいる場合に、その方法だとうまくいかないみたいなのです。 (少なくとも、知人の環境1つと、自分の環境で、うまくいかない。具体的には、Ctrlキーが押下されっぱなしになってしまう) そこで、Scancode Mapではなく、グローバルフックにより「英数キー」の入力を奪い取る作戦を考えたのですが、テストプログラムを作ってみると、なぜか「英数キー」は、キーの押下はフックできるのに、キーの解放はフックできません。 調べてみると同様のことで悩んでいる方はすでにいるようで、LowLevelよりもさらに上流(キーボードドライバから直接受け取るところ)で制御しないとダメなんだとか。 さすがにそんな上流のプログラムを書く能力は無いので、やり方を変えて GetAsyncKeyState() によって、キー状態をタイマ監視するようにしてみたらどうかと思ったら、GetAsyncKeyState() が押下状態をうまく取得できていない様子。 手詰まりになりつつある中、色々調べている過程で、RegisterHotKey() も解決案の候補に並びまして、「もしかしてこれって、既存のソフトのシンプル化に使える方法なんじゃないか?」と思い立ち、適用をしてみたというわけです。 ちなみに、「英数キー」問題については、手詰まりになりました。 目次の表示: ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメール、フィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。 当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。 |
- 最近の更新 - |
|
3212520 (+0217)[+0214] Copyright© 2010-2024 INASOFT |