tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^6: IE を最前面に表示
投稿日: 2008/03/07(Fri) 14:33
投稿者花ちゃん
> ということはEnumWndProc等を使用して「IEタイトル」等で目的のハンドルを特定して
> SetWindowPosにほうり込む方法しかないのでしょうか?
> APIを使用するしかないのでしょうか?

別窓で表示させた場合は、そのようにするしかないのでは。
Form 上に表示した WebBrowser 内に表示させた場合なら  Me.TopMost = True でも可能
ですが。


> リンクラベルのサンプルがMSに載っていますが
どれの事でしょうか?

> 「  System.Diagnostics.Process.Start("IExplore.exe", "URL") ’MSDN」
> これだととりあえずIE起動表示時に最前面に表示されるのでは?
これだけでは、常に最前面に表示される事はありません。

どのように指定のウィンドウを表示させたいかで取得方法も変わってきますが、
下記コードで実験して見て下さい。
コメントを付けたままと、外した状態で比べて見て下さい。
(同じ事をメモ帳で実験すると違う答えになります)

Private Sub Button2_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button2.Click
   Dim p As Process = New Process
   p.StartInfo.FileName = "IExplore.exe"
   p.Start()
   p.WaitForInputIdle()

'   System.Threading.Thread.Sleep(1000)

   Debug.WriteLine(p.MainWindowHandle)
   Dim Ret As Integer = SetWindowPos(p.MainWindowHandle, HWND_TOPMOST _
                                   , 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE)
   p.Close()
End Sub

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。