| ■47466 / ) |
Re[2]: IEを既定としない状態でも開くようにする |
□投稿者/ VB初心者 (3回)-(2010/03/03(Wed) 12:36:36)
|
■No47450 (スクリプトプログラマ さん) に返信 > ■No47389 (VB.NET 初心者 さん) に返信 >>お世話になっております。 >>以前、IEが開いていたら、新しいタブで開くするにはどのようにすればよいか? >>という質問をし、下記のようなコードを書きました。 >> >>Dim ShellWindows As Object >> ShellWindows = GetObject("new:9BA05972-F6A8-11CF-A442-00A0C90A8F39") >> For Each IEWEB As Object In ShellWindows >> IEWEB.Navigate(arg1, &H800) >> Exit For >>Next > > ShellWindowsコレクションの先頭の要素を使っているのが原因では? > 先頭がエクスプローラの場合に既定のブラウザになるのでは? > IEかどうか調べてIEからNavigateするように変えればよいかと。
自分なりに考えてみました。 コードは下記のとおりです。
Dim IE As Object Dim ShellWindows As Object 'カウンター初期値 Dim i As Integer = 0 ShellWindows = GetObject("new:9BA05972-F6A8-11CF-A442-00A0C90A8F39") 'ForeachでShellWindowsの要素を回す For Each IE In ShellWindows Console.WriteLine(IE.FullName) '要素内に、iexplore.exeがあった場合、そのオブジェクとに対してナビゲート If pProcessFlg = 0 And LCase(IE.FullName) Like "*\iexplore.exe" Then Console.WriteLine("IEないです") ReDim IE(i) Console.WriteLine(i) IE(i).Navigate2(arg1, 1) 'gsubTimeWait(1000) 'subTopMost() i = +1 Exit For Next
|
|