私は別のアプリケーションに配置したウィンドウを持っています。この場合、私はOutlook 2003のウィンドウに注入したカスタムアプリケーションを持っています。親ウィンドウインターセプトアクセラレータ
親ウィンドウ(ここではOutlook)に、アプリケーションでバックスペースキーを押したときにWM_COMMANDメッセージが表示される問題があります。私の限定されたWin APIの経験から、これは、親がバックスペースキーがアクセラレータだと思っていて、アプリケーションがそれを見る前に処理していることを示しているようです。
Outlookアクセラレータテーブルを取得するためにLoadAccelerators関数を試していますが、親ウィンドウのテーブルを取得する方法がわかりません。
アイデア?
EDIT:
WM_COMMAND wNotifyCode:1(加速器から送られた)WID:1405
私は私のテキストボックスがWM_KEYDOWNのときを取得することがわかります、私はバックスペースキーを押したときにここで がスパイ++から出力され、バックスペースキーが押されます。
P WM_KEYDOWN nVirtKey:VK_BACK cRepeat:1 ScanOcde:0EfExtended:0fAltDown:0fRepeat:0fUp:0
おかげでここでそのメッセージのスパイ++ラインがあります。
これまでXobniを使用しましたか?彼らは同じことをする。 OutlookのAPIは2003年には限られていますが、2007年はやや異なる話です。 助けてくれてありがとう、私はそれを確認します。 – Max
私はこれがOutlookに統合するのに非常に一般的な方法であることに同意する必要があります。 – 76mel