查看: 34  |  回复: 0
  VB6 代码管家-取任务栏所有程序标题
楼主
发表于 2024年12月8日 21:51
Option Explicit
Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Public Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Public Declare Function IsWindowVisible Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function EnumWindows Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Public Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long) As Long
Public Const GW_OWNER = 4

Function lpfunc(ByVal hwnd As Long, ByVal lParam As Long) As Boolean
	Dim pstr As String, Ret As Long
	If IsWindowVisible(hwnd) = False Then GoTo continu
	If GetWindow(hwnd, GW_OWNER) <> 0 Then GoTo continu
	Ret = GetWindowTextLength(hwnd)
	pstr = Space(Ret)
	If GetWindowText(hwnd, pstr, Ret + 1) = 0 Then GoTo continu
	If pstr <> "" And pstr <> "Program Manager" Then Form1.List1.AddItem pstr
	continu:
	lpfunc = True
End Function
'----------------------------------------以上代码放到模块里

Private Sub Command1_Click()
	List1.Clear
	EnumWindows AddressOf lpfunc, ByVal 0&
End Sub


您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2024 MaNongKu.com