VB中用PostMessage 往QQ对话框中逐字符发送字符串,但回车换行不行,怎么回事?
本帖最后由 jessylake 于 2021-5-30 21:18 编辑Private Sub PostString(ByVal lngHandle As Long, ByVal strP As String)
Dim intP As Integer, t
Dim intK As Integer
Dim lngAsc As Long
Dim lngP As Long
Dim strT As String
On Error GoTo errSub
For intP = 0 To Len(strP) - 1
strT = Mid(strP, intP + 1, 1)
If Asc(strT) <= 0 Then
lngAsc = AscW(StrConv(strT, 128))
If lngAsc < 0 Then
lngAsc = lngAsc + 65536 '2^16
End If
Else
lngAsc = Asc(strT)
End If
lngP = PostMessage(lngHandle, WM_CHAR, lngAsc, 0)
Next intP
Exit Sub
errSub:
End Sub
字符串中有回车换行符 Chr(13) & Chr(10),其他字符都没问题,唯独这回车换行符不行,怎么回事? QQ对话框是自绘方式的,正常来说如果是能发送到编辑框的换行符是能正常的,但是你的lngHandle是窗口的,所以是不起作用的 Monitor 发表于 2021-5-30 13:39
QQ对话框是自绘方式的,正常来说如果是能发送到编辑框的换行符是能正常的,但是你的lngHandle是窗口的,所 ...
问题是我的其他字符都没问题,就是回车换行不行,导致该断开的没断开,连成一起了 只是回车换行不行,其他字符都没问题。 用msgbox显示没问题,就是用PostMessage发送到QQ对话框中时,回车换行符发不出来 vb那么复杂吗?小白一枚 自己解决了!
在原来WM_CHAR = &H102基础上
换个参数
WM_KEYDOWN = &H100 jessylake 发表于 2021-5-30 21:17
自己解决了!
在原来WM_CHAR = &H102基础上
换个参数
请问,具体怎么解决的这个问题呢 Ctrl+V不好吗? Jack2002 发表于 2021-8-15 01:34
Ctrl+V不好吗?
我这边测试的不好使,现在遇到一个问题:因为程序是在VPS上运行的,只要断开远程,模拟鼠标键盘的操作好像就停止了,不知道怎么解决
页:
[1]