パスワード管理にMMIDBankというソフトを使わせて頂いています。
ところがIE7上ではTABによるフォーカス移動がうまくいかなくなりました。
ソースを見ても単純にSendKeysでキー入力を送っているだけなので、MSDNでSendKeysの説明をみたところ、以下のことがわかりました。
- SendKeysには古い実装とVista対応した新しい実装がある。
- デフォルトではSendKeysは古い実装を試し、失敗したら新しい実装を使用する。
- アプリケーション設定で新/旧いずれかの実装を強制できる。
そこで必ず新しい実装を使用するように設定してみたところ、IE7でも期待する動作になりました。
具体的な対処方法は以下に示す内容のXMLファイルにMMIDBank.exe.configと名前をつけて、MMIDBank.exeと同じフォルダに置くだけです。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="SendKeys" value="SendInput"/>
</appSettings>
</configuration>