Option Explicit
Dim Cadena As String
Private Sub Conectar_Click()
Dim Velocidad As String, Paridad As String, Bits As String, Parada As String
'comprueva que el puerto este cerrado para poder abrirlo
If MSComm1.PortOpen = False Then
'determina el puerto que hemos seleccionado
If Combo1.ListIndex = 0 Then
MSComm1.CommPort = 1
Else
MSComm1.CommPort = 2
End If
'determina: 9600-Velocidad en Baudios, N-No utiliza ninguna paridad,
'8-Cantidad de bits de envio y recepcion por paquete,
'1-Determina los bits de parada
Velocidad = Trim(TxVelocidad.Text)
Paridad = Trim(TxParidad.Text)
Bits = Trim(TxBits.Text)
Parada = Trim(TxParada.Text)
MSComm1.Settings = Velocidad & "," & Paridad & "," & Bits & "," & Parada
'lee todo el buffer de entrada para que quede vacio
MSComm1.InputLen = 0
'Abre el puerto seleccionado
MSComm1.PortOpen = True
Me.Caption = "Conectado por el puerto " & MSComm1.CommPort
End If
End Sub
Private Sub Desconectar_Click()
If MSComm1.PortOpen Then
'cierra el puerto
MSComm1.PortOpen = False
Me.Caption = "Desconectado"
End If
End Sub
Private Sub Enviar_Click()
'envia el texto escrito.
MSComm1.Output = TextoEnviar.Text & vbCr
'coloca el texto que enviamos en la pantalla
Texto.Text = Texto.Text & vbCrLf & "<Ordenador 1>" & TextoEnviar.Text
TextoEnviar.SetFocus
End Sub
Private Sub Form_Load()
Combo1.AddItem "Com1"
Combo1.AddItem "Com2"
Combo1.ListIndex = 0
End Sub
Private Sub Form_Unload(Cancel As Integer)
Desconectar_Click
End Sub
'El evento OnComm se genera siempre que cambia el valor de la propiedad
'CommEvent e indica que se ha producido un evento o un error en la comunicación.
Private Sub MSComm1_OnComm()
Dim i As Integer
Dim Valor As String
'recoge el valor de entrada
Valor = MSComm1.Input
'busca la posicion del caracter de salto de linea
i = InStr(Valor, Chr(13))
'si no hay ningun salto de linea, quiere decir que la informacion que recibe
'es parte de una cadena recibida con anterioridad.
If i = 0 Then
Cadena = Cadena & Valor
Else
Cadena = Cadena & Left(Valor, i - 1)
Texto.Text = Texto.Text & vbCrLf & "<Ordenador 2>" & Cadena
Texto.SelStart = Len(Texto.Text)
Cadena = ""
End If
End Sub