1

I would like a simple answer as to how to press a button on an Android (using basic4android), and get a VB6 program to accept the data and respond. Both the Android and the computer running the VB6 program are connected to the same WiFi.

Erel gives me a URL, but after reading for hours, I can't seem to find a SIMPLE example of the Android code and the VB6 code.

4

2 回答 2

1

我不知道basic4android,但是在电脑上一个简单的VB6项目可以如下:

'1 form with :
'  1 textbox : name=Text1
'  1 winsock control : name=Winsock1

Option Explicit

Private Sub Form_Load()
  Text1.Move 0, 0, ScaleWidth, ScaleHeight 'position the textbox
  With Winsock1
    .LocalPort = 5001                      'set the port to listen on
    .Listen                                'start listening
  End With 'Winsock1
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
  With Winsock1
    If .State <> sckClosed Then .Close     'close the port when not closed (you could also use another winsock control to accept the connection)
    .Accept requestID                      'accept the connection request
  End With 'Winsock1
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
  Dim strData As String
  Winsock1.GetData strData                 'get the data
  ProcessData strData                      'process the data
End Sub

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
  MsgBox Description, vbCritical, "Error " & CStr(Number)
End Sub

Private Sub ProcessData(strData As String)
  Text1.SelText = strData                  'show the data
End Sub

一些评论:

该项目使用监听 winsock 控件来接受连接,因此之后您将不再监听新的连接请求。当您计划发送大量数据时,您可能应该缓冲数据,并在完成时对其进行处理。

于 2012-11-19T07:12:00.863 回答
0

在 VB6 端使用 MSComm 通过 COM 端口之一控制串行通信。OnComm 将捕获接收事件。蓝牙转换器可以连接到端口以处理无线通信。 https://msdn.microsoft.com/en-us/library/aa259393(v=vs.60).aspx

在 B4A 端,使用串行库通过 RFCOMM(一个虚拟串行 COM 端口)连接蓝牙设备。https://www.b4x.com/android/help/serial.html

于 2017-04-30T07:30:23.503 回答