SAKYA
March 13th, 2001, 07:39 AM
How can i get the handles of all the open windows?
Thanks in advance to any replies.
Thanks in advance to any replies.
|
Click to See Complete Forum and Search --> : SAKYA SAKYA March 13th, 2001, 07:39 AM How can i get the handles of all the open windows? Thanks in advance to any replies. CK Dixon March 13th, 2001, 07:58 AM EnumWindows() Iouri March 13th, 2001, 08:00 AM Here the code how to find window by part of it caption. Use wild card and it will find all the open windows '---Bas module code------ Private Declare Function EnumWindows& Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long Private Declare Function IsWindowVisible& Lib "user32" (ByVal hwnd As Long) Private Declare Function GetParent& Lib "user32" (ByVal hwnd As Long) Dim sPattern As String, hFind As Long Function EnumWinProc(ByVal hwnd As Long, ByVal lParam As Long) As Long Dim k As Long, sName As String If IsWindowVisible(hwnd) And GetParent(hwnd) = 0 Then sName = Space$(128) k = GetWindowText(hwnd, sName, 128) If k > 0 Then sName = Left$(sName, k) If lParam = 0 Then sName = UCase(sName) If sName Like sPattern Then hFind = hwnd EnumWinProc = 0 Exit Function End If End If End If EnumWinProc = 1 End Function Public Function FindWindowWild(sWild As String, Optional bMatchCase As Boolean = True) As Long sPattern = sWild If Not bMatchCase Then sPattern = UCase(sPattern) EnumWindows AddressOf EnumWinProc, bMatchCase FindWindowWild = hFind End Function '----Using (Form code)---- Private Sub Command1_Click() Debug.Print FindWindowWild("*Mi??OSoFt In[s-u]ernet*", False) End Sub Iouri Boutchkine iouri@hotsheet.com Cimperiali March 13th, 2001, 09:11 AM Excelent! Special thanks to Lothar "the Great" Haensler. Come back soon, you Guru. codeguru.com
Copyright Internet.com Inc., All Rights Reserved. |