投稿数 - 437, コメント - 57203, トラックバック - 156

伝説達成

http://www.atmarkit.co.jp/fwin2k/itpropower/admin-kun/023/adminkun023.html
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=30446&forum=34&13

「マウスを止めている状態」と「マウスを動かしている状態」では何が違うのだろうか。ここでは Excel の話をしているので、「Excel 上」でということにする。

「マウスを止めている状態」だと、Excel には WM_GETTEXT や WM_USER、WM_GETTEXTLENGTH 等が間断なく送信される。

「マウスを動かしている状態」だと、Excel には WM_MOUSEMOVE、WM_SETCURSOR、WM_NCHITTEST 等が間断なく送信され、合間に WM_GETTEXT、WM_GETTEXTLENGTH 等が送信される。この時送信される WM_GETTEXT、WM_GETTEXTLENGTH の数は、同時間だと「マウスを止めている状態」より「マウスを動かしている状態」の方が数が少ない。

この伝説を信じるのならば、「マウスを動かす状態」より「マウスを止めている状態」の時に、Excel はより多くの仕事をしているということになる。恐らく殆どのアプリケーションは WM_MOUSEMOVE、WM_SETCURSOR、WM_NCHITTEST はスルーして何もしていない事が多いだろう。対して、WM_GETTEXT 等では処理している事が多いはずだ。WM_USER に至っては、必ず捕まえて処理していると言えるかもしれない。

「マウスを止めている」からと言って、アプリケーションは何もしていないわけではないのだ。逆に「マウスを動かしている状態」の方がアプリケーションにとってはどうでも良い事であって、無視している事が多い。

Excel は「マウスを止めている」時により多くの仕事をしているという事だ。だから、「マウスを動かすと伝説達成!」なわけだ。

しかし、ここで思考停止してはいけない。

私はここに「マウスジェスチャー」の可能性を疑っている。マウスをぐりぐり動かす事によって、Windows は、ユーザーがイライラしている事を感知しているのだ!

何故ユーザーはイライラしているのか?Windows は一考する。

Windows はプロセス一覧を走査。

I/O に時間がかかっている Excel を発見!

Excel のプロセスプライオリティを一時的に上げる!(I/O に時間食われているなら無駄か?ハードディスクの回転数を上げる!?)

まさに人工知能。いや、もう Windows は意思を持つにまで至ったのだ…。オーマイガッ!

投稿日時 : 2006年5月11日 22:00

フィードバック

# re: 伝説達成

やっぱり、釣られたんですねw

そのあたりの分析結果を、例のスレにうpしておきましょうw
2006/05/11 23:57 | じゃんぬ

# re: 伝説達成

こっそり試していた私が来ましたよ。
そういうことだったんですねw
2006/05/12 11:09 | まゆりん

# re: 伝説達成

改めて囚人さんって凄いなぁと思ってしまいました。

>何故ユーザーはイライラしているのか?Windows は
>一考する。

モチロン、この部分も含めてです。
VISTA から実装されませんかね?
2006/05/12 11:24 | R・田中一郎

# re: 伝説達成

推測が大半なので、鵜呑みにしないでね。>ALL

>VISTA から実装されませんかね?
もちろん実装されるでしょう。隠しコマンドを探すのが楽しみですね。
2006/05/12 20:43 | 囚人

コメントの投稿

タイトル
名前
URL
コメント