按键精灵如何读取listbox的内容

Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, _
ByVal wMsg As Long, ByVal wParam As Long, lParam As int32) As Long
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
 LVM_GETITEMCOUNT = (&H1000 + 4)
TracePrint LVM_GETITEMCOUNT
hwnd = 265094
TracePrint SendMessage(Hwnd, LVM_GETITEMCOUNT, 0, 0) '获取ListBox项目数
LB_GETCOUNT = &H18B
LB_GETTEXT = &H189
dex = SendMessage(hwnd, LB_GETCOUNT, 0, 0)
TracePrint dex
Dim d
For i = 0 To dex-1
    s=Space(500)
    Call SendMessage(hwnd, LB_GETTEXT, i, s)
    TracePrint ANSItoUnicode(s)
Next
Function ANSItoUnicode(vIn)
    Dim i,ThisCharCode,NextCharCode,strReturn
    For i = 1 To LenB(vIn)
        ThisCharCode = AscB(MidB(vIn, i, 1))
        If ThisCharCode < &H80 Then
            strReturn = strReturn & Chr(ThisCharCode)
        Else
            NextCharCode = AscB(MidB(vIn, i + 1, 1))
            strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
            i = i + 1
        End If
    Next
    ANSItoUnicode=strReturn
End Function
TracePrint 11

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值