• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:64bitOSでGetFocus取得できず)

64bitOSでGetFocus取得できず

このQ&Aのポイント
  • windowsでキーボードをフックし、フォアグラウンドのアプリのキーを取得し、実行ファイル名を取得しようとしています。
  • 32bitのWindowsや64bitのWindows7では問題なくファイル名を取得できたが、64bitアプリでは取得できない。
  • GetFocusの戻り値がNULLになっている可能性があるが、他の方法があるのか検討中。

質問者が選んだベストアンサー

  • ベストアンサー
noname#259269
noname#259269
回答No.1

64bit OS 上で動作する 32bit 実行環境は、 WOW64 によって 64bit 実行環境とは隔離されていますので、64bit 実行環境にアクセスする場合は、DLL およびそれを利用するアプリケーションも 64bit 化する必要があります。

chess_7
質問者

補足

ご回答ありがとうございます。 しかしそうなりますと、64/32bitアプリ毎にそれぞれ64/32bitのフックプロシージャが必要となり、また64bitアプリは64bitフックプロシージャに32bitアプリは32bitフックに個別に接続が可能であるということになりますでしょうか。

その他の回答 (1)

noname#259269
noname#259269
回答No.2

>しかしそうなりますと、64/32bitアプリ毎にそれぞれ64/32bitのフックプロシージャが必要となり、また64bitアプリは64bitフックプロシージャに32bitアプリは32bitフックに個別に接続が可能であるということになりますでしょうか。 はい、そのとおりです。 試してみてくださいませ。

chess_7
質問者

お礼

どうもありがとうございました。 現在環境がBCB5なので、VSに移して32/64bit二つビルドし確認してみようと思います。

関連するQ&A