新しいToshibaSatelliteZ930を購入したばかりで、音量アップ/ダウンファンクションキーが提供されていないことに失望しました。ただし、ultrabookには電源ボタンの横に2つのプログラム可能なキーがあるため、これらのキーから呼び出すことができる小さなC++アプリを開発しようとしています。
これまでのところ、私のコードはすべて、プログラムに渡されたコマンドラインパラメーターに基づいて音量を増減するためにうまく機能しています。私が抱えている唯一の問題は、操作が機能したことをユーザーに知らせるためにマスターボリュームスライダーを表示し、のスピーカーアイコンをクリックしたときに表示される通常の位置に表示したいということです。通知領域。
ATM CreateProcess()を使用して「sndvol.exe-f」を実行しています。これは機能しますが、ウィンドウが奇数の場所(およそ{100、400})に表示されます。そこで、EnumWindows()とGetWindowThreadProcessId()を使用してウィンドウへのハンドルを取得し、SetWindowPos()を使用して目的の場所に移動しようとしましたが、これは効果がありません。プロセスのトップレベルウィンドウへのハンドルを正常に取得できますが、移動できません。
誰かがこの行動を説明できますか?スライダーウィンドウからフォーカスを外すとウィンドウが閉じるという事実と関係がありますか?このページは、私が達成しようとしていることが可能であることを示唆していますが、私は何を間違っているのですか?
MTIA:D