次のコードを使用して、他のアプリケーションのボタンを押そうとしています:
HWND ButtonHandle;
if( (wnd = FindWindow(0, "Do you want to save?")) )
{
ButtonHandle = FindWindowEx(wnd, 0, "SaveButton", "&Save");
SendMessage(wnd, WM_COMMAND, MAKEWORD(GetDlgCtrlID(ButtonHandle), BN_CLICKED ), (LPARAM)ButtonHandle);
}
うまくいきません。MAKEWORD に別のハンドルを渡して、WPARM と LPARAM を変更しようとしましたが、何もしませんでした。
別のアプリケーションのウィンドウでボタンをクリックする方法についてのアイデアはありますか?
コードは大歓迎です。ありがとう。
編集:権限が機能しないように見える理由。PostMessage() を送信したところ、GetLastError() = 5 (または Access Denied) のエラーが返されました。何か案は?
EDIT2失礼なつもりはありませんが、お願いします。ボタンの領域の取得と設定、ボタンダウンとボタンアップの送信、コントロールIDの取得、クラスIDの取得、クラスIDの取得など、すべてのAPIをすでに検索しましたさらに無数。そもそもここで質問した理由は、すでにインターネットで検索を使い果たしたからです。PLEASE POST CODEという答えがわかっている場合は、API を提案しないでください。それは難しいことではありません。ありがとうございました。
編集 3: 賞金が終了すると、質問の回答が自動的に選択されました。疑問はまだ答えが出ていない。