以下代码不会将焦点设置为我需要的IE窗口,也不会像它应该的那样最大化它。
Option Explicit On
Public Class Form1
Public Declare Auto Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Sub automateIE()
Dim shellWindows = New SHDocVw.ShellWindowsClass()
For Each ie As SHDocVw.InternetExplorer In shellWindows
Dim isIE As Boolean = True
Try
Dim ie2 As mshtml.IHTMLDocument = ie.Document
Catch ex As Exception
isIE = False
End Try
If isIE Then
If ie.LocationURL.Contains("url") Then
ShowWindow(ie.HWND, 3)
Exit For
End If
End If
Next
End Sub
End Class
答案 0 :(得分:1)
已更改(VB6)
Public Declare Auto Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
To(VB.NET)
Imports System.Runtime.InteropServices
...
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Private Shared Function ShowWindow(ByVal hwnd As IntPtr, ByVal nCmdShow As ShowWindowCommands) As Boolean
End Function
Enum ShowWindowCommands As Integer
SW_MAXIMIZE = 3
...
End Enum
感谢Hans Passant的评论