掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ウィンドウをアクティブにしたい (ID:138154)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>もげさん だめでした。 >Shell()関数の戻り値は、ウィンドウのハンドルではありませんから 盲点でした。 入力を色々ためし、Ret1からウィンドウハンドルを探してみて成功しましたが、 '戻り値インスタンス Ret1insID = Shell("C:\WINDOWS\ime\IMJP8_1\imjpdct.exe", vbNormalFocus) SendKeys "%{T}", True '戻り値ハンドル Ret1hD = GetWinHandle(Ret1insID) ーーーーーーーーーーーーー①−−−−−−−−−−− '戻り値スレッド Ret1thID = GetWindowThreadProcessId(Ret1hD, Null) nowhD = GetForegroundWindow() nowthID = GetWindowThreadProcessId(nowhD, Null) sc1ID = AttachThreadInput(nowthID, Ret1thID, False) If sc1ID = 0 Then MsgBox ("失敗しました") End If sc2ID = SetForegroundWindow(Ret1thID) If sc2ID = 0 Then MsgBox ("失敗しました") End Else MsgBox ("成功しました") End End If ーーーーーーーーーーーーー②−−−−−−−−−−− scID = SetWindowPos(Ret1hD, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE) If scID = 0 Then MsgBox ("失敗しました") End Else MsgBox ("成功しました") End End If ーーーーーーーーーーーーー③−−−−−−−−−−− scID = SetActiveWindow(Ret1hD) MsgBox (scID) と入力し、実行してみたところ、①②はメッセージボックスに『失敗しました』と連続表示され、③は『0』が表示され失敗に終わります。 どうやら、ハンドルの取得には成功するもののそのあとが続きません。 何がいけないのかご教示お願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.