2013-12-14 1 views
0

모뎀을 나가고 싶습니다. 시각적 기본 6 Mscomm1을 통해 포트. 모뎀에 Nokia c2 0i를 사용하고 있습니다. 코드는 모뎀과 연결하여 메시지를 보냅니다. 내 질문은 어떻게 올바른 모뎀 나가는 포트 및 메시지 상자에 이름을 표시 할 수 있습니다. 보정 내 코드를 확인하십시오 :나가는 포트를 감지하려고하지만 내 코드가 결과를 표시하지 못합니까?

Private Sub Timer1_Timer() 
Dim FromModem$ 
On Error Resume Next 
For i% = 1 To 6 
MSComm1.CommPort = i% 
If MSComm1.PortOpen = False Then 
MSComm1.PortOpen = True 
MSComm1.InBufferCount = 0 
Label8.Caption = " PORT " & i% 
pb1.Value = pb1.Value + 10 
List2.AddItem i% 
Text1.Text = "Searching Modem Port" & i% 
MSComm1.Output = "AT" + Chr$(13) 
Sleep 4000 
If MSComm1.InBufferCount Then 
FromModem$ = FromModem$ + MSComm1.Input 
If InStr(FromModem$, "OK") Then 
MsgBox "Modem has Found" & i% 
Beep 400, 300 
Timer1.Enabled = False 
Exit For 
End If 
Else 
MSComm1.PortOpen = False 
End If 
End If 
DoEvents 
Next i% 
If i% > 6 Then 
Timer1.Enabled = False 
End If 
End Sub 
+1

당신이 그것을 생각하십니까 코드에 식별자를 다시 추가 할 수 있습니까? 그렇게하면 소비가 더 쉬워집니다. 그리고 당신이 그것에있는 동안 나는 약간의 보강과 캡슐화를 고치고 감사를 제거하려고 노력합니다. 그건 필요하지 않습니다. – rene

+1

작동하지 않는 기능은 무엇입니까? 다른 방법으로 모뎀에 연결하면됩니까? – rene

답변

1

내장 직렬 포트 클래스 수입 시스템 수입 System.IO.Ports 모듈 SerialPortExample

를 사용하여이 예를 시도
Sub Main() 
     Dim ports As String() = SerialPort.GetPortNames() 
     Dim port As String 
     For Each port In ports 

      'put your function here 
     YourTestPort(port) 'Call the Open port function then Send AT(char(13)) 

     Next port 

    End Sub 
End Module