Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: TrashAmbishion en 5 Junio 2013, 00:26 am



Título: Problemita usando el SerialPort ?
Publicado por: TrashAmbishion en 5 Junio 2013, 00:26 am
Tengo una aplicación que hace función de Caller ID (Identificador de Llamadas) el soft trabaja bien, la duda surge porque hace poco lo trate de usar en un Modem MulTiTech puerto COM y no captura la información, entonces me puse a investigar y el problema es que ese modem no entrega los datos a la misma velocidad que otro modem (por ejemplo uno USB), la solución segun varios usuarios por la red es la de crear un buffer que lea la información (byte x byte) o algo asi, queria saber si alguien tiene alguna noción sobre el tema, entiende sobre lo que hablo aqui...

Les pongo el codigo que tengo actual para capturar la información...

Código
  1.  
  2. Delegate Sub SetTextCallback(ByVal [text] As String) 'Added to prevent threading errors during receiveing of data
  3.  
  4. Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
  5.        ReceivedText(SerialPort1.ReadExisting())    'Automatically called every time a data is received at the serialPort
  6.    End Sub
  7.  
  8.    Private Sub ReceivedText(ByVal [text] As String)
  9.        'compares the ID of the creating Thread to the ID of the calling Thread
  10.        If Me.InvokeRequired Then
  11.            Dim x As New SetTextCallback(AddressOf ReceivedText)
  12.            Me.Invoke(x, New Object() {(text)})
  13.        Else
  14.            SplitData([text])   'Esta es la función que me organiza los datos recibidos.
  15.        End If
  16.    End Sub
  17.  
  18.