2017-05-31 63 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

這是工作!非常感謝 –

相關問題