明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2868|回复: 2

请问:如何枚举当前打开的窗口名称,指WINDOWS进程

[复制链接]
发表于 2004-7-16 10:53:00 | 显示全部楼层 |阅读模式
我现在想用API函数枚举出当前WINDOWS里打开的窗口,然后把它们的标题列表出来!
发表于 2004-7-16 20:02:00 | 显示全部楼层
  1. Option Explicit
  2. Private Declare Function GetDesktopWindow Lib "user32" () As Long
  3. Private Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
  4. Private Declare Function GetParent Lib "user32" (ByVal hwnd As Long) As Long
  5. Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
  6. Private Declare Function IsWindowVisible Lib "user32" (ByVal hwnd As Long) As Long
  7. Private Const GW_HWNDNEXT = 2
  8. Private Const GW_CHILD = 5
  9. Private Sub Form_Load()
  10.        '使用前在窗体上创建一个ListBox控件,名称为List1
  11.        Dim hwnd As Long
  12.        hwnd = GetDesktopWindow() '返回桌面的句柄
  13.        hwnd = GetWindow(hwnd, GW_CHILD) '返回桌面的第一个子窗口
  14.        Dim sWindowText As String
  15.        Dim r As Long
  16.        Do While hwnd <> 0
  17.                If GetParent(hwnd) = 0 Then '顶层窗口
  18.                        If IsWindowVisible(hwnd) Then '窗口状态是显示的
  19.                                sWindowText = String(255, Chr(0))
  20.                                r = GetWindowText(hwnd, sWindowText, 255) '返回窗口的标题
  21.                                sWindowText = Left(sWindowText, r)
  22.                                If sWindowText <> "" Then List1.AddItem sWindowText
  23.                        End If
  24.                End If
  25.                hwnd = GetWindow(hwnd, GW_HWNDNEXT) '返回下一个窗口
  26.        Loop
  27. End Sub
发表于 2008-3-29 19:51:00 | 显示全部楼层
efan2000发表于2004-7-16 20:02:00Option ExplicitPrivate Declare Function GetDesktopWindow Lib \"user32\" () As LongPrivate Declare Function GetWindow Lib \"user32\" (ByVal hwnd As Long, ByVal wCmd As Long) As Lon

efan2000
对API有比较深的了解

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 10:38 , Processed in 0.178726 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表