NullKeyboardは何もしないSIPということで、OperaがいくらSIPを開こうとしても安心という事ですね。
これにLPChgExecとChangeSIP等を組み合わせれば解決とのアドバイスを頂いたのですが、せっかくなので簡単にSIPを指定できるようなツールを作ってみようと思いました。SIPの選択自体は「Windows Mobileプログラミング徹底理解
どうも画面が切り替わったときに前のSIPの領域を覚えているような気もするのですが、原因は不明のままです。
単純に画面の向きに応じてSipSetCurrentIM()でSIPを切り替えているだけなのですが、何か見落としがあるのでしょうね。
static VOID ChgSip()
{
DWORD dwData = 0L;
if (SUCCEEDED(RegistryGetDWORD(SN_DISPLAYROTATION_ROOT, SN_DISPLAYROTATION_PATH, SN_DISPLAYROTATION_VALUE, &dwData))) {
if (0L == dwData) {
SipSetCurrentIM(&g_clsidPortrait);
} else {
SipSetCurrentIM(&g_clsidLandscape);
}
//SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, (WPARAM)SPI_SETSIPINFO, NULL);
}
}
しかも、その後いろいろ調べていると 実はPQzIIにもSIPの切り替え機能があった事が発覚。
しかもこちらは問題なく動作します。それなら「PQzIIでいいじゃん」とも思うのですが、スッキリしないのでもう少し調べてみようと思います。
0 件のコメント:
コメントを投稿