problemas con el mscomm
Publicado por Manu (28 intervenciones) el 20/11/2001 06:51:49
Hola, estoy haciendo una apli que se comunica con un monedero (una máquina a la que se le introducen monedas) por el puerto serie con el control mscomm32.ocx de microsoft (vb6 con win2000), pero siempre me da un error de interrupción y 'pilla' una cadena de caracteres extraña, a ver si alguno ha tenido este problema, adjunto el código fuente:
Private Sub Form_Load()
' Establece el puerto
MSComm1.CommPort = 1
' Otras settings
MSComm1.Settings = "9600,n,8,1"
' Indicar al control que lea todo el búfer al usar
' Input.
MSComm1.InputLen = 0
MSComm1.InBufferSize = 1024
MSComm1.OutBufferSize = 512
MSComm1.RThreshold = 15
MSComm1.SThreshold = 1
MSComm1.InputLen = 15
MSComm1.ParityReplace = "?"
MSComm1.RTSEnable = True
MSComm1.DTREnable = True
MSComm1.NullDiscard = False
MSComm1.Handshaking = comNone
MSComm1.Handshaking = comRTS
MSComm1.Handshaking = comRTSXOnXOff
' Abre el puerto
MSComm1.ParityReplace = "" ' Elimina el Caracter de Remplazo de la Paridad
MSComm1.RThreshold = 25 ' Cada cuantos caracteres recibidos en el Buffers se activara el suceso
MSComm1.PortOpen = True
If Err Then
MsgBox "COM1: No Disponible."
Exit Sub
End If
' Vacía el buffer de entrada.
MSComm1.InBufferCount = 0
End Sub
Private Sub Form_Unload(Cancel As Integer)
' Cierra el puerto al descargar
MSComm1.PortOpen = False
End Sub
Private Sub MSComm1_OnComm()
Dim codigoleido As String
'Variable para
Private Sub Form_Load()
' Establece el puerto
MSComm1.CommPort = 1
' Otras settings
MSComm1.Settings = "9600,n,8,1"
' Indicar al control que lea todo el búfer al usar
' Input.
MSComm1.InputLen = 0
MSComm1.InBufferSize = 1024
MSComm1.OutBufferSize = 512
MSComm1.RThreshold = 15
MSComm1.SThreshold = 1
MSComm1.InputLen = 15
MSComm1.ParityReplace = "?"
MSComm1.RTSEnable = True
MSComm1.DTREnable = True
MSComm1.NullDiscard = False
MSComm1.Handshaking = comNone
MSComm1.Handshaking = comRTS
MSComm1.Handshaking = comRTSXOnXOff
' Abre el puerto
MSComm1.ParityReplace = "" ' Elimina el Caracter de Remplazo de la Paridad
MSComm1.RThreshold = 25 ' Cada cuantos caracteres recibidos en el Buffers se activara el suceso
MSComm1.PortOpen = True
If Err Then
MsgBox "COM1: No Disponible."
Exit Sub
End If
' Vacía el buffer de entrada.
MSComm1.InBufferCount = 0
End Sub
Private Sub Form_Unload(Cancel As Integer)
' Cierra el puerto al descargar
MSComm1.PortOpen = False
End Sub
Private Sub MSComm1_OnComm()
Dim codigoleido As String
'Variable para
Valora esta pregunta


0