How do I get process information about IE window

I am using the vb.net code below to find an instance of IE that is displaying a particular URL.

How can I also get the process information? If I could get the process ID then I could find the process. Thanks.

Dim window As SHDocVw.InternetExplorer
SA = CreateObject("Shell.Application")
            Dim windowCount As Integer = SA.windows().count()
            For Each window In SA.windows()
                Dim WindowURL = window.LocationURL
                logmessage("check windowURL = " & WindowURL)
                If InStr(WindowURL, URLToCheck) > 0 Then
                    logleave("IsWebTopPageOpen:success")
                    Return window
                End If
            Next
Christopher ScheneSystem Engineer/Software EngineerAsked:
Who is Participating?
 
Christopher ScheneConnect With a Mentor System Engineer/Software EngineerAuthor Commented:
This is the code I used to get the process information from the window handle.  Per my original question I was using vb.net: I needed something programmatic in vb.net. I answered my own question.

'Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, ByRef lpdwProcessId As Long) As Long
    Private Declare Function GetWindowThreadProcessId Lib "user32" _
  (ByVal hwnd As IntPtr, _
    ByRef lpdwProcessId As Long) As Long
    Public Function getProcessFromWindowHandle(ByVal hWnd As Long) As Process

        Dim myProcess As Process = Nothing
        logenter("getProcessIDFromWindowHandle " & hWnd)
        Try
            Dim lngPid As Integer
            Dim lngAccessHwnd As IntPtr = New IntPtr(hWnd)
            GetWindowThreadProcessId(lngAccessHwnd, lngPid)
            ' GetWindowThreadProcessId(lngAccessHwnd, myProcessidPtr)
            myProcess = Process.GetProcessById(lngPid)
        Catch ex As Exception
            logmessage(ex.ToString())
            myProcess = Nothing
        Finally
            logleave("getProcessIDFromWindowHandle")
        End Try
        Return myProcess
    End Function
0
 
DavidPresidentCommented:
try this
http://powertoe.wordpress.com/2010/11/10/finding-the-thread-pid-that-belongs-to-a-tab-in-ie-8-with-powershell/

Granted it is powershell, but you can always do this from VBS and trap/process the output

But I'm not 100% sure that javascript doesn't allow the same process ID to have more than one window, so this may not even be possible in the first place.
0
 
Christopher ScheneSystem Engineer/Software EngineerAuthor Commented:
Thanks but I can't user PS as I am running ie7 on an XP machine.

This is vb.net code, BTW.

I am pretty sure that if I get a window handle that there is a way to get the process id from the window handle....just not sure exactly how
0
 
Tushar_DarwatkarCommented:
Hello,

Did you tried using "Process Explorer v15.3" to track the process. If no please try installing it from below link ans share your experience.

http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
0
 
Christopher ScheneSystem Engineer/Software EngineerAuthor Commented:
Answered my own question
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.