【问题标题】:Connecting B4A Android Application to Desktop using VB6使用 VB6 将 B4A Android 应用程序连接到桌面
【发布时间】:2014-07-21 04:53:42
【问题描述】:
我正在使用 basic4android 并创建了一个应用程序,它可以简单地存储和推送所有手机按键。当我远程在线存储和转储数据时,这是起作用的,但是我试图存储数据以显示在监听 vb6 表单应用程序上。基本上每次触发 X 个单词的新记录时,它应该只是在我正在运行的 VB 表单标签上显示该文本块。请注意,我使用的是从设备到 PC 的 USB 电缆。抱歉这个菜鸟问题。
如何通过 USB 将数据从我的 android 设备推送到我的监听 VB6 表单应用程序?
谢谢。
【问题讨论】:
标签:
android
vb6
basic4android
【解决方案1】:
这是一个棘手的问题,因为与安卓手机通话的驱动程序是什么并不明显。如果幸运的话,驱动程序会将自身映射到 COM 端口。例如,在我的盒子上,“Samsung Mobile USB Modem #2”设备将自身映射到 COM4。
如果您的设备使用 COM 端口映射,则将 Microsoft Comm Control 添加到您的组件列表中。永远等待输入并写入 Debug.Print 的简单代码如下:
If MSComm1.PortOpen = True Then MSComm1.PortOpen = False
MSComm1.CommPort = "4" ' <=== "1" = COM1, "2" = COM2, "3" = COM3, "4" = COM4
MSComm1.Settings = "1200,n,8,1" ' You can probably replace 1200 with a much higher value, e.g. 230400
MSComm1.RThreshold = 1
MSComm1.InputLen = 1
MSComm1.PortOpen = True
Do
DoEvents
Debug.Print MSComm1.Input
Loop Until False
如果驱动程序使用其他机制,这将更加复杂,并且需要处理驱动程序和 Windows API - 不适合胆小的人。
【解决方案2】:
就像 Mark Bertenshaw 所说,虽然我不会循环获取数据而是使用 OnComm() 事件:
Private Sub MSComm1_OnComm()
Dim strInput As String
Select Case MSComm1.CommEvent
Case comEvReceive
strInput = MSComm1.Input
Debug.Print strInput
End Select
End Sub