ヨン様と呼ばないで!

アクセスカウンタ

zoom RSS コードをちまちま

<<   作成日時 : 2010/05/02 21:46   >>

ナイス ブログ気持玉 4 / トラックバック 1 / コメント 15

5月になっちまいました。
そういや先月は一度もエントリを書いてねーですな。
別に、単に仕事がいっぱいあっただけです。それ以外は何もありませんでした。
夏までそんな感じっぽいですね。

でまあやっと連休なんですが、ちょこっと開発を再開してました。
具体的には、2.1 のリリース後にいただいた要望の対応です。

・設定ダイアログのプルダウンメニューテキストを編集不可に修正
・Tabキーによるフォーカス移動で時間設定のテキストボックスに移動するよう修正
・時間が無効な値のときOKボタンを押すとエラーダイアログが閉じるだけになるよう修正

何気にTabフォーカスが面倒というか、予想通りリソース修正ではどうにもならずに結構コード追加と相成りました。
あと、チェックボックスからShift+Tabでの移動が出来なくて(フォーカスロストのメッセージが拾えない)、画面レイアウトが若干変わりました。
ぶっちゃけ、優先度と位置を入れ替え。
実験しながらコードをいじってたら、なんかダイアログメッセージハンドラが巨大化してきて、ちとしょぼい感じ。
今やってる仕事が超貧弱メモリ前提で、スタック節約のためにあんま分割すんなと言われてる悪影響が出てるような気がしないでもないです。
なんという貧乏臭さ。
これはリリース前にはちゃんと分割しようと思います。

ただ、この修正だけで新規リリースってのもちょっとアレすぎる気がするのです。
なので、次バージョンのリリースと一緒に取り込もうかと思います。
もしくは何か大きいバグが出たら、その修正版に取り込むかのいずれかで。


さて、実は現在別のアプリの検討を始めてます。
自分が欲しいものを作るというコンセプトですので、当然自分用。
まあぶっちゃけ、壁紙チェンジャなんですけど。
出来がよかったら公開する予定です。


2013/07/16追記
修正版を公開しました。

ChatteringCanceler2.1a beta1リリース

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ
気持玉数 : 4
ナイス ナイス
なるほど(納得、参考になった、ヘー)
ガッツ(がんばれ!)

トラックバック(1件)

タイトル (本文) ブログ名/日時
ChatteringCanceler2.1a beta1リリース
大変長らくお待たせいたしました。 気付いたら2.1のリリースから3年以上経過してたわけで、自分でもびっくりですよ。 その間に色々バグのご報告やら何やらいただきましたんで、何とかなりそうな修正をあらかたぶち込んでみました。 ...続きを見る
ヨン様と呼ばないで!
2013/07/16 00:01

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(15件)

内 容 ニックネーム/日時
大掛かりな変更になってしまったようで申し訳ないです。
フォーカス移動はWin32でダイアログベースならメッセージループにIsDialogMessageを噛ますだけでモーマンタイなのかと思っていたのですがそうではなかったのですね。
ISLe
2010/05/03 16:07
個人的にはChatteringCancelerにプロセス指定が欲しいところではありますが
MMOとかChatteringCancelerが入ってると不正アプリ扱いされる場合があるので
指定したプロセスだけONなんて出来るとMMOを起動ごとにChatteringCancelerを終了させないで済むんですけどね・・・

>壁紙チェンジャ
うあ 欲しー
期待大
MITU
2010/05/03 17:36
>ISLeさん
まあ、以前から気になってはいたのでいい機会だったと思ってますw

>MITUさん
プロセスでは毎回IDやハンドルが変わって面倒なので、モジュール登録方式がいいかもですね。
無効にするモジュールを登録する感じで。
次リリースの追加機能として検討してみます。

壁紙チェンジャについては、すぐに完成する気がしないので・・・あんま期待されてもw
ふぉう
2010/05/03 18:03
はじめまして おじゃまします。
窓では使っており非常に重宝しているのですがLinux用に作ったりはできないのでしょうか。わがまま言っているのはわかるのですが言ってみたり。

それと言語は何を使っているのでしょうか?これは興味本位ですが。

これからもがんばってください。
wahhoi
2010/05/21 17:28
>wahhoiさん
ほんのちょっとだけLinux上の、というよりX上でのマウスデバイスアクセスについて調べてみました。
読み書きはともかく、X-デバイス間のアクセスを横取りする方法が、とりあえず見付かりませんでした。
まぁそれ以前に開発環境がない訳でして、当面は他OS用に移植する予定はありません。
すいません。

あと言語ですが、C++です。
コンパイラはVisual C++ 2008です。でもx64用バイナリはWindowsSDK付属のコンパイラで生成してます。
Win32APIを直接叩く都合上、.Net Frameworkは使っていません。
ふぉう
2010/05/23 22:16
MX-1000にてこのツールを使わせていただいています。

要望なのですが、4ボタンと5ボタンが結局マウスのどのボタンに該当するのかがわからなくて、効果が出ているのか、設定が間違っているのかが判別できません。

Windowsのゲームコントローラ設定画面にボタンのテストモードのようなものがありますよね。ああいうのは難しそうでしょうか…。

勝手な要望で申し訳ありませんが、4ボタンと5ボタンが、マウスのこのボタンだよ〜、と分かりさえすれば何でも良いので、このへんの対策をお願いできませんでしょうか。

Mediale
2010/07/19 12:09
>Medialeさん
たぶん出来ると思います。
あまりセンスのいい画面を作る自信はないのですが、デザイン精一杯頑張ってみますw
ふぉう
2010/07/25 18:57
開発お疲れ様です。
8000円のマウスが1年も持たずにチャタりだし、先日よりこちらのソフトを使わせていただいてます。
非常に助かっています。
ひとつ提案なのですが、(チャタリングをキャンセルした回数/クリックされた回数)を設定画面の(mSec)の隣あたりにでも表示できませんでしょうか?
ソフト導入直後の動作確認しやすくなり、また時間経過によりチャタリングが酷くなっているかの確認にも使えるんではと思います。(Medialeさんの要望も解決?)
もし気が向きましたらご検討をよろしくお願いします。
part
2010/08/22 19:02
>partさん
なるほど・・・統計機能ですか・・・。
いいかもしれませんねー。

夏休みはコードをまったくいじらず終わってしまったので、この夏リリースってのはちょっと無理ぽいですが。
ボタンのTestモードとあわせて次回検討します。
ふぉう
2010/08/22 23:33
こんにちは。愛用させていただいております。
基本的には中クリックがなんとかなればいいので、他のボタンは気にしていませんが、中クリックに関しては(かつ私の環境に関しては)、設定を100msecほどに伸ばすといいようです。

さて、バグということでもなく、私の環境だけかもしれないのですが、このソフトを起動した(常駐した)状態で、CPUに負荷がかかっていると、マウスカーソルの動作が引っかかるようになります。
起動していない状態では、CPUが100%になっていてもマウスカーソルは特に制限なく動けるのですが、このソフトの動作がマウスの割り込みを阻害してしまっているのでしょうか。
現象から判断する限り、このソフトの優先度を「下げて」やればいいような気もするのですが、2.1で追加された優先順位設定には「下げる」側はないようなので。
タスクマネージャから直接下げればいいのかもしれませんが、やっていません。

もし何らかの対策、対応がとれるようであれば、ご検討いただけると幸いです。
s$
2010/09/07 15:58
>s$さん
ちょっと遭遇したことのない現象ですので、もしまた発生したときにタスクマネージャから試しに下げてみていただけませんか?
こちらでも余裕ができましたら再現テストをしてみますが、なにぶん忙しい日が続いていまして、近いうちにという確約もできない有様です。
個人的には、優先度を上げる方向で解消するんじゃないかとは思っています。
ふぉう
2010/09/13 23:06
マウスの動作が引っかかる件ですが、結論からいうと、優先度を下げても意味がなく、上げる方向でした。
それも「通常(高)」ではだめで、「高」ないし「リアルタイム」にすると、引っかかりが(完全にとはいってない気もしますが)なくなりました。
おっしゃるとおりでしたね。

ちなみに、どうやらやみくもにCPUが100%になっているとだめなわけではなく、本ソフトをインストールしているPCにはマカフィーのVirusScan(Enterprise 8.5)が入っているのですが、これのおそらくオンアクセススキャンであるところの mcshield.exe が支配しているときにマウスの動作を阻害しにかかっているようでした。

さしあたり優先度を「高」にして様子をみてみます。
s$
2010/09/22 19:45
初めまして、ChatteringCancelerの不具合を報告させて頂きます。

マウスのプロパティの「主と副のボタンを切り替える」が真の時に、「イベントディレイ方式」の挙動がおかしいようです。
ボタンの左右を反転したメッセージを出す必要があるようです。
「主と副のボタンを切り替える」の値は以下のレジストリキーにあります。
HKEY_CURRENT_USER\Control Panel\Mouse\SwapMouseButtons
fool
2010/10/16 12:53
うっはー長期にわたって放置しちゃいました。
すいませぬ。

>s$さん
ひとまずそれで様子見をお願いします。
システムコールをフックするプログラムですので、セキュリティソフトには目をつけられやすいのは確かです。
プログラムごとに許可する設定があるならば、そこでChatteringCancelerを許可しておくというのも手かと思います。

>foolさん
ボタンの左右は考慮外でした。なるほど。
次回修正時に取り込もうと思います。
ありがとうございました。
ふぉう
2010/11/01 13:31
初めまして、よろしくです。

ChatteringCanceler関連の投稿・コメントから1年ちょっとになるようなのでまだ携わっておられるか分からないんですが、一応ダメ元で質問させていただきます。

バグかもしれませんし、私が何か素朴な間違いをしているかもしれませんが、一回チャタリングで返品交換してもらったLogicoolがまたチャタり出して今日ダウンロードさせていただいてインストールしてみました。ログを見て分かったのは、私のマウスのチャタリングは2パターンあることで、それは

(1)意図的なDOWN-UP後、約16ms後DOWN、約16ms後UPというのと、
(2)意図的なDOWN-UP後、0ms後DOWN、約16msか31ms後UPというパターンです。

パターン(1)のチャタリングは問題なく直してくれますが、パターン(2)のはそのまま通っちゃいます。ログでは例えば以下のようになります。

DOWN,2668,0,450,598,0,0
UP,62,0,450,598,0,0
DOWN,0,0,450,598,0,0
UP,16,0,450,598,0,0

0msの間隔でDOWNというのは具体的にどうなっているか分かりませんが(例えばその前の押下期間中にチャタリングが発生するがマウス内の回路がそれを次のUP後までバッファリングしているとか?当てずっぽうですが)、そういった極端に短い間隔でのチャタリングを破棄することはできないのでしょうか?

長らく眠っているスレを蘇らせてしまって申し訳ありません。
istaro
URL
2012/01/26 21:28

コメントする help

ニックネーム
URL(任意)
本 文
コードをちまちま ヨン様と呼ばないで!/BIGLOBEウェブリブログ
文字サイズ:       閉じる