使用CreateObject("MSWinsock.Winsock")方式的乱码问题!
下面是我的代码,我用CreateObject("MSWinsock.Winsock")的方式建立winsock,
发送出去的数据是乱码
例如:发送 [12345] 收到的是[\]
注:[里的是数据]
Public Sub init(host As String, port As Integer)
mHost = host
mPort = port
Set winsock1 = CreateObject("MSWinsock.Winsock")
End SubPublic Function send(info As String)
mInfo = info
winsock1.Protocol = sckTCPProtocol
If winsock1.State <> sckClosed Then
winsock1.Close
End If
winsock1.RemoteHost = mHost
winsock1.RemotePort = mPort
winsock1.Connect
Do Until winsock1.State = sckConnected
'如果不为关闭状态就等待,当关闭时表明别的地方已执行了停止连接,则退出
If winsock1.State <> sckClosed Then
DoEvents
ElseIf winsock1.State = 9 Then
send = False
Exit Function
Else
send = False
Exit Function
End If Loop
winsock1.SendData mInfo
WaitFor 7
winsock1.Close
send = True
End Function
下面是我的代码,我用CreateObject("MSWinsock.Winsock")的方式建立winsock,
发送出去的数据是乱码
例如:发送 [12345] 收到的是[\]
注:[里的是数据]
Public Sub init(host As String, port As Integer)
mHost = host
mPort = port
Set winsock1 = CreateObject("MSWinsock.Winsock")
End SubPublic Function send(info As String)
mInfo = info
winsock1.Protocol = sckTCPProtocol
If winsock1.State <> sckClosed Then
winsock1.Close
End If
winsock1.RemoteHost = mHost
winsock1.RemotePort = mPort
winsock1.Connect
Do Until winsock1.State = sckConnected
'如果不为关闭状态就等待,当关闭时表明别的地方已执行了停止连接,则退出
If winsock1.State <> sckClosed Then
DoEvents
ElseIf winsock1.State = 9 Then
send = False
Exit Function
Else
send = False
Exit Function
End If Loop
winsock1.SendData mInfo
WaitFor 7
winsock1.Close
send = True
End Function
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货