Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    vb6 visualizzazione messaggi UDP ricevuti in GPRS

    Ciao a tutti,
    sto realizzando in vb6 un programmino che riceve dei messaggi UDP da un dispositivo tramite GPRS e li visualizza a video. il problema è che il messaggio viene visualizzato con caratteri indecifrabili. questo è un esempio di quello che vedo:

    ?††††?†††???????? 418040506361821

    la prima parte è il testo del messaggio contenente i dati che mi interessano, la seconda parte è l'id del modem che invia i dati, come potete notare l'id è visualizzato correttamente, mentre il messaggio no.

    volevo chiedere se secondo voi il problema è il fatto che sul mio pc non è installato il font necessario oppure se si tratta di dati criptati e devo decriptarli prima di visualizzarli.

    Grazie mille per l'aiuto

    Paolo

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh, se sono dati criptati, lo puoi sapere solo tu.

    Il font non dovrebbe entrarci nulla ...

    Non sappiamo in quale formato ti vengono inviati questi dati (in binario, in testo, ANSI ... UNICODE ... ?) e non avendo a disposizione il codice che riceve, e' praticamente impossibile risponderti.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    I dati dovrebbero essere inviati in esadecimale, ho scambiato un paio di mail con un tecnico (o quasi) della ditta produttrice del dispositivo ma continua a dirmi che i dati sono inviati in esadecimale e che devo convertirli in ASCII. Lui non ha parlato di dati criptati, per quanto ne so io non dovrebbero esserlo...

    il programma che intercetta i mesasaggi e li visualizza è molto semplice. Utilizzo i WINSOCK, il codice è questo:
    ----------------------------------------------------------------
    Private Sub Form_Load()
    Winsock1.Protocol = sckUDPProtocol
    Winsock1.LocalPort = 2048
    Winsock1.Bind
    End Sub

    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Winsock1.GetData Msg
    txtPrompt = CStr(Msg)
    End Sub
    ------------------------------------------------------------------

    prima inizializzo il socket, poi leggo i messaggi che arrivano e li mostro a video (ho provato anche con textbox e con il msgbox ma non cambia...)

    Grazie ancora per la disponibilità

    Paolo

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Penso che i dati sono inviati in binario ... non puoi farti dare dal tecnico il sorgente che invia i dati stessi?

    Quanti dati sono e in quale formato?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Purtroppo il tecnico mi sa che più che essere un vero e proprio tecnico è un mezzo commerciale, proverò a chiedergli i sorgenti ma dubito che me li dia...

    per il formato proverò nuovamente a chiedere, ma già due volte mi ha datto che sono o in esadecimale o binario. pensandoci bene anche secondo me è probabile che sia binario.

    se fossero in binario sai dirmi come visualizzarli correttamente?

    La lunghezza della parte che non riesco a decifrare dovrebbe essere di 14 Byte

    Grazie

    Paolo

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    L'esadecimale non e' un formato ma un tipo di rappresentazione numerica, non ha senso indicare che i dati sono in esadecimale.

    E' importante sapere che non siano ASCII (infatti i 14 byte non li vedi).

    Il problema e' sapere cosa rappresentano quei 14 byte ...

    Ad esempio, per capirci, potrebbero essere

    4 byte -> intero long in binario con segno

    8 byte -> double in formato IEEE

    2 byte -> intero short in binario con segno

    ... e tutte le combinazioni possibili ... se non sai questo, e' un po' dura riuscire a capirci qualcosa ...

    Almeno sai, quanti dovrebbero essere i dati dei 14 byte? E cosa dovrebbero rappresentare? Che so, dei valori interi, dei valori con virgola ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    ho trovato un documento che dice che i byte dovrebbero essere 15 così suddivisi:

    byte*****data description*****comments
    0*******0x00**************parameter number
    1*******0x0A**************parameter number
    2*******0x02**************status
    3*******0x00**************reserved
    4-12****0x20**************parameter number
    13******0x31**************parameter number
    14******0x20**************parameter number


    non so se questo può aiutarti... penso comunque che si tratti di cifre senza virgola e senza segno

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.