HOME     メール  

Links:

最近の投稿

カテゴリー

広告

サイト内検索

外部リンク

アーカイブ

広告

お知らせ

IE10のBattenX定義例3

IE10のBattenX定義例2でもなぜかうまくいかないときがあって、たくさんタブが開いているときは結局タブにある罰点ボタンをクリックしているようになってしまったため、かなり突っ込んで調べてみたらIE10は最初、WindowのタイトルがWindows Internet Explorerとなっていた。つまり定義2で使用した ハイフン(マイナス記号のこと)がなくなっているのだ。

デジカメの画像ファイルなど大きなファイルサイズを貼り付けたウィンドウの内容を更新したときに出てしまうのだが、そのときに処理が滞ってWindows Internet Explorerだけ設定されてしまうようだ。
例えば新製品レビュー:ニコンDf – デジカメ Watch からその中の写真をクリックすると(注意:10MB以上の写真ファイルをダウンロードして表示します。)、IE10の定義が無効になりアプリケーション共通の定義が適用されてしまいます。私の場合、無変換キーやマウス↓でタブを閉じる設定してあるのですが、アプリケーション共通の定義ではそれらのキーやマウスジェスチャーはアプリ全体をクローズする設定(ALT+F4)にしてあるので、たくさんタブを開いていると非常に気に入らない動作になってしまうのです。

だから定義2は先頭のハイフンとスペースを取り除いた”Windows Internet Explorer”で登録しなおせばうまくいくようになる。しかしこれでも失敗した時が残念ながら1度経験している。本当にIE10は複雑なプログラムだ。フレームウィンドウのタイトルバーの変更は最初から監視対象になっており、変更があれば内容は更新されるコードになっているのだが、IE10は見ればわかるが見た目ではタイトルバーには何も表示されていない。SPY++で見ればあるのが確認できるだけだ。

今回はアプリケーションを認識する方法として、フレームウィンドウクラスとし、その文字列はIEFramだ。64bit版Windowsなら32bit版も含め定義2つ必要だ。
その定義例のダウンロード

IE11もWindows7で使えるようになり、まだ更新していないが、またもや内部の挙動が変更になっているかもしれない。
BattenXを若干変更しようと何度も思ったが、これだけ面妖なプログラムのために速度低下、これまでの安定した動作を変更するのは躊躇したので更新は見送りました。