Ir ao conteúdo
  • Cadastre-se

Leandro Rodrigo Oliveira

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Bom dia! Estou programando um sock TCP-IP para receber dados de um scanner 2D. Porém, não consigo receber dados como pacotes. Quando recebo é como se eu estivesse pegando um Byte por vez e gostaria de saber como faço pra receber somente o Byte que eu quero. Criei um UDT da mesma forma que o manual do transmissor indica que ele transmite mas não consigo fazer com que os dados de cada pacote se "encaixem" conforme cada Byte. Segue abaixo um exemplo do código que fiz e que não recebe os dados daquele determinado pacote, mas sim aleatório. Private Type packet_Header 'CRIEI O UDT CONFORME O MANUAL DO EQUIPAMENTO magic As Integer packet_type As Integer packet_size As Integer header_size As Integer scan_number As Integer packet_number As Integer timestamp_raw As Date timestamp_sync As Date status_flags As Integer scan_frequency As Integer num_points_scan As Integer num_points_packet As Integer first_index As Integer first_angle As Integer iq_input As Integer angular_increment As Integer iq_overload As Integer header_padding As Integer End Type Private Type scan_point_data distance As Integer End Type Public Sub CommandButton1_Click() Set tcpClient = New MSWinsockLib.Winsock tcpClient.Protocol = sckTCPProtocol tcpClient.Connect "169.254.218.229", "59164" MsgBox tcpClient.State 'MsgBox tcpClient.SocketHandle MsgBox tcpClient.BytesReceived End Sub Public Sub tcpClient_DataArrival(ByVal bytesTotal As Long) Dim teste As packet_Header tcpClient.GetData teste.magic ' NESSA LINHA EU GOSTARIA DE RECEBER O DADO DESSE BYTE DO FRAME, MAS ELE VEM ALEATÓRIO. MsgBox teste.magic End Sub

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...