vb sendmessage hwnd,&H4A,0,datastruct
没一次是成功的 对任何窗体都没效Private Declare Function SendMessageAny Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long
Private Type COPYDATASTRUCT
dwData As Long
cbData As Long
lpData As Long
End Type
Dim DataStruct As COPYDATASTRUCT
Const WM_COPYDATA = &H4A
Dim a As Stringa = "3214"DataStruct.cbData = LenB(a) //len(a) //len(a)+1 什么都试过了
DataStruct.dwData = 0
DataStruct.lpData = VarPtr(a) //strptr(a)也试过了SendMessageAny hwnd, WM_COPYDATA, 0, DataStruct //hwnd 我会取句柄的 整理不写代码
没一次是成功的 对任何窗体都没效Private Declare Function SendMessageAny Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long
Private Type COPYDATASTRUCT
dwData As Long
cbData As Long
lpData As Long
End Type
Dim DataStruct As COPYDATASTRUCT
Const WM_COPYDATA = &H4A
Dim a As Stringa = "3214"DataStruct.cbData = LenB(a) //len(a) //len(a)+1 什么都试过了
DataStruct.dwData = 0
DataStruct.lpData = VarPtr(a) //strptr(a)也试过了SendMessageAny hwnd, WM_COPYDATA, 0, DataStruct //hwnd 我会取句柄的 整理不写代码
'将一个字符串通过PostMessage传送出去
Public Sub subPostString(ByVal strP As String)
Dim intP As Integer
Dim intK As Integer
Dim lngAsc As Long
Dim lngP As Long
Dim strT As String
On Error GoTo errSub
Debug.Print strP
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