不是不给是没分了!只求个为什么!

FindExRen 2005-07-24 01:11:03
为什么我取IE标题都可以,其它的像计算器的确不行,高手解答我没分了所以。。呵呵!

还有那个地方为什么要填充255的字符呢! WinText = String$(255, vbNullChar)

Public Sub findrunningprogram()
Dim RenHWND As Long '窗口句柄
Dim Count As Integer
Dim RetValue As Long '是GetWindow的返回值,其返回值的作用:复制到lpString的字串长度
Dim WinTextLength As Long '取的字符串长度
RenHWND = GetWindow(Form1.hwnd, GW_HWNDFIRST) '取第一个窗口句柄
Do
WinText = String$(255, vbNullChar)
WinTextLength = Len(WinText)
RetValue = GetWindowText(RenHWND, WinText, WinTextLength) '取标题名字,参(1):窗口名柄;参(2):字符串变量;参(3):字符串长度
If RetValue <> 0 Then
WinTextLength = GetWindowTextLength(RenHWND)
If Left$(WinText, WinTextLength) = "计算器" Then
Form1.List1.AddItem WinText
End If
End If
RenHWND = GetWindow(RenHWND, GW_HWNDNEXT) 'GW_HWNDNEXT的值为“2”,也许是移动到下个程序
Loop Until RenHWND = 0
End Sub
...全文
92 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
FindExRen 2005-07-24
  • 打赏
  • 举报
回复
晕看楼上的例子后我 取了部分匹配~居然找到了"计算器"这是为什么高手解释下,不然睡不着!
If Left$(WinText,3) = "计算器" Then
FindExRen 2005-07-24
  • 打赏
  • 举报
回复
同志们哪出VB版的热情来..好冷呀!汗...-_-||
FindExRen 2005-07-24
  • 打赏
  • 举报
回复
重点是不是那个+1呀~还是EnumWindowsProc 这个~。。怎么我在API里找不到 EnumWindowsProc!//

~_~!!
hopeybx 2005-07-24
  • 打赏
  • 举报
回复

Public Function EnumWindowsProc(ByVal hwnd As Long, ByVal lParam As Long) As Boolean
Dim sSave As String, Ret As Long
Ret = GetWindowTextLength(hwnd)
sSave = Space(Ret)
GetWindowText hwnd, sSave, Ret + 1
If sSave = "&Finish >" Then
Wait (1)
PostMessage hwnd, WM_KEYDOWN, VK_RETURN, 0
Form1.Timer1.Enabled = False
Wait (1)
CopyFile "PATCH.exe", "c:\Program Files\FlashGet\PATCH.exe", 0
Wait (1)

SetCurrentDirectory "c:\Program Files\FlashGet\"
X = Shell("c:\Program Files\FlashGet\PATCH.exe")
Wait (1)
Form1.Timer2.Enabled = True
End If
If sSave = "安装3721上网助手" Then
Wait (1)
PostMessage hwnd, WM_KEYDOWN, VK_SPACE, 0&
PostMessage hwnd, WM_KEYUP, VK_SPACE, 0&
End If
If sSave = "I &Agree" Then
Wait (1)
PostMessage hwnd, WM_KEYDOWN, VK_RETURN, 0
End If
If sSave = "&Next >" Then
Wait (1)
PostMessage hwnd, WM_KEYDOWN, VK_RETURN, 0
End If

EnumWindowsProc = True
End Function

我知道你的意思,你看看上面写的应该就好了
xiaoMONKEY 2005-07-24
  • 打赏
  • 举报
回复
厚道一点,帮你顶一下
crycoming 2005-07-24
  • 打赏
  • 举报
回复
哈哈 像我是因为不懂 就不答了 反正帮不上
FindExRen 2005-07-24
  • 打赏
  • 举报
回复
这世界太现实了吧!
FindExRen 2005-07-24
  • 打赏
  • 举报
回复
不是吧这样你们就没有动力了~帮我这只菜鸟呀!

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧