none
Invio stringa su ethernet mediante Winsock RRS feed

  • Domanda

  • Salve a tutti, 

    Mi stò avvicinando piano piano alla programmazione con VB6.

    Purtroppo essendo all'inizio ho come tutti i principianti una marea di lacune. Spero pertanto nel vostro aiuto.

    Vorrei inviare ad un dispositivo elettronico posto sulla stessa rete mediante l'istruzione Winsock su Ethernet una stringa di caratteri. Diciamo una decina di caratteri.

    Ho però constatato che i caratteri da Winsock, vengono inviati singolarmente, e non tutti insieme come una stringa. Purtroppo così facendo il dispositivo remoto non mi riconosce la stringa e quindi non identifica il comando ricevuto.

    Mi chiedevo se vi fosse un metodo per poter inviare con Winsock l'intera stringa, oppure se esiste un metodo/istruzione alternativa per farlo.

    Grazie per l'aiuto.


    • Modificato Giuseppe_S giovedì 7 marzo 2013 20:22
    • Spostato Irina Turcu martedì 12 marzo 2013 13:27 Sviluppo con VB6.
    giovedì 7 marzo 2013 20:21

Risposte

  • Ciao Automatizzando,

    di solito, in questi casi, la prima cosa da fare e' consultare il manuale del device a cui devi inviare le stringhe.

    Per utilizzare HyperTerminal, fatti un file di testo dove scrivi cio' che vuoi mandare, dato che se invii i caratteri tramite tastiera, questi vengono inviati uno per uno, quindi non puoi capire come si comporta il destinatario della tua stringa.

    • Contrassegnato come risposta Irina Turcu giovedì 20 giugno 2013 12:46
    lunedì 18 marzo 2013 08:08

Tutte le risposte

  • Ciao Giuseppe,

    il metodo SendData dell'oggetto Winsock di VB6 manda tranquillamente una intera stringa.

    Se devi inviare dei dati binari, invece, devi usare una matrice di bytes.

    Domandina che c'entra poco :)

    come mai, dato che stai iniziando ora con la programmazione in un linguaggio VB, stai usando il VB6 (tecnologia vecchia di 15 anni) e non vai di VB.net?

    • Proposto come risposta Irina Turcu martedì 12 marzo 2013 13:26
    • Proposta come risposta annullata Irina Turcu giovedì 20 giugno 2013 12:46
    venerdì 8 marzo 2013 08:46
  • Scusate se rispondo dopo un pò di tempo, ma sono stato fuori.

    Rispondo per passi:

    Io devo inviare una stringaintera, ma nel dispositivo, la stringa viene ricevuta a singoli caratteri, se ad esempio invio il numero 120, vedo la ricezione avviene prima con 1, poi il 2 e poi lo 0, e non 120, un pò come se vi fosse una pausa tra ogni carattere inviato.

    Può essere che sbaglio qualche cosa, ma per sicurezza proverò con hyperterminal per essere certo che non sia il dispositivo remoto a comportarsi in questo modo.

    Per quanto riguarda il motivo del perchè utilizzo VB6, perchè avevo iniziato ad usarlo una decina di anni fà, ed ora la "ripresa" mi sembra più facile, è l'ambiente più famigliare.

    Grazie per l'aiuto.

    Giuseppe

    lunedì 11 marzo 2013 15:06
  • Ciao Automatizzando,

    di solito, in questi casi, la prima cosa da fare e' consultare il manuale del device a cui devi inviare le stringhe.

    Per utilizzare HyperTerminal, fatti un file di testo dove scrivi cio' che vuoi mandare, dato che se invii i caratteri tramite tastiera, questi vengono inviati uno per uno, quindi non puoi capire come si comporta il destinatario della tua stringa.

    • Contrassegnato come risposta Irina Turcu giovedì 20 giugno 2013 12:46
    lunedì 18 marzo 2013 08:08