2017-05-31 57 views
2

我在android上创建了一个列出一些数据的应用程序。我想通过蓝牙将该列表数据发送到我的VB 6。但我不知道如何在VB上进行蓝牙连接的编码。请给我一些这个问题的例子。 我用MSComm控件在VB中接收蓝牙数据,但它不工作如何通过蓝牙从android接收VB 6中的数据字符串

Private Sub Command1_Click() 
MSComm1.CommPort = Val(Combo1.Text) 
MSComm1.Settings = "38400,n,8,1" 
MSComm1.PortOpen = True 
MsgBox "connected !", vbInformation, "success" 
Combo1.Enabled = False 
Command1.Enabled = False 
End Sub 


Private Sub MSComm1_OnComm() 
accept.Text = MSComm1.Input 
End Sub 

我曾经使用App Inventor for我的Android程序,我想使用蓝牙内部在我的笔记本电脑接收器

+0

说明“不起作用”。 –

+0

你有什么作为combo1中的端口号?你在设备管理器中看到端口吗? – deblocker

+0

你为什么在VB6中编码?它已经死了近20年,现代VB的免费版本可用。 – DaveInCaz

回答

0

假设您已在您的问题中正确配置了您提到的端口,在Form中您放置了MSComm Control,请放置Timer轮询输入。

让我们说这个定时器被称为定时器1,那么计时器回调中添加的代码这片:

Private Sub Timer1_Timer() 
    If (MSComm1.InBufferCount > 0) Then 
     accept.Text = MSComm1.Input 
    End If 
End Sub 

或者,您可能还需要一些额外的防御检查:

Private Sub Command1_Click() 
    MSComm1.CommPort = Val(Combo1.Text) 
    MSComm1.Settings = "38400,n,8,1" 
    If MSComm1.PortOpen = False Then 
     MSComm1.PortOpen = True 
    End If 
    ' don't open a msgbox, toggle visibility of a small icon 
    Combo1.Enabled = Not MSComm1.PortOpen 
    Command1.Enabled = Not MSComm1.PortOpen 
    Timer1.Enabled = MSComm1.PortOpen 
End Sub 

..以及一些清理代码,只是为了举例说明:

Private Sub Form_Unload(Cancel As Integer) 
    If MSComm1.PortOpen = True Then 
     MSComm1.PortOpen = False 
    End If 
    Timer1.Enabled = False 
End Sub 

只是最后一个注意:确保临时t两个设备都配置为使用完全相同的串行协议,并且开始尝试9600 bps

+0

thankyouu这么多:')我会尝试这个编码yaaay:D –

+0

这是工作!非常感谢 –

相关问题