Newsgroup: it.comp.lang.visual-basic
Titolo: come reindirizzare dati da com1 a com2

Salve a tutti,
Ringrazio anticipatamente coloro che mi aiuteranno.
Problema:
Devo creare in vb un programmino che mi riindirizza i dati in entrata
dalla com1 sulla com2 pari pari senza fare modifiche.
ho gia creato qualcosa per non riesco a gestire bene il buffer
Usa il componente mscomm
grazie a tutti
DARIo

sopra...@hotmail.com
 ha detto questo mercoledì :

Non devi gestire il buffer.
Ciò che entra esce, basta impostare a 1 buffer di ingresso e buffer di 
uscita, in modo da disabilitarlo.
....
qui Settings di Com1 e Com2
....
Com1.RThreshold=1
Com1.SThreshold=1
Com2.RThreshold=1
Com2.SThreshold=1
Com1.Portopen=True
Com2.Portopen=True
Com1_OnComm
Com2.Output=Com1.Input
Com2_OnComm
Com1.Output=Com2.Input
Da gestire piuttosto ci potrebbe essere il discorso dei segnali di 
controllo dell'handshaking, che dovrai fare secondo specifiche e con 
relativa piedinatura.
Ciao
Alberto
-- 
Il tuo stesso identico umore,
ma la divisa di un altro colore

 
sopra_so...@hotmail.com
 ha detto questo mercoledì :

Grazie per l'aiuto.
e anche perche sei stato velocissimo.
ti pongo un altra domanda ho analizzato quello che mi entra e mi
ritorna una stringa del genere:0 Yÿÿ Y.
secondo te devo convertirla in ASCII e se si come posso fare?
Grazie DARIO

 secondo te devo convertirla in ASCII e se si come posso fare?
Ti faccio io una domanda:
Senza sapere di che periferiche parliamo, che dati transitano, che 
protocollo utilizzi, e cosa vuoi visualizzare, ritieni che ti si possa 
dare una risposta?
Alberto
-- 
Fabio Fazio: Se siamo alleati come mai nei nostri bar si vende Coca 
Cola e nei bar americani non si vende l'amaretto di Saronno?

secondo te devo convertirla in ASCII e se si come posso fare?
Con la funzione ASC()
For i =1 to Len(MyStr)
 debug.Print    Asc ( Mid$ (MyStr,i,1) )
next
--
ciao
  Stefano

 ritorna una stringa del genere:0 Yÿÿ Y.
A occhio sembra che la velocità di trasmissione è sbagliata.
Ciao

 Ciao
Vi spiego il porblema completo.
Devo mettermi in mezzo a un programma di gestione macchine utensili
che dialiga con la macchina tramite una porta COM (9600,n,1,8) e
analizzare tutto quello che passa e capire nel codice come viene
identificato lo stato della macchina.
Ad ora mi sono scritto in un file i dati che passa ma sono quasi
incomprensibili...

Nel suo scritto precedente, 
sopra...@hotmail.com
 ha sostenuto :

A parte che i settings saranno 9600,n,8,1 e non 9600,n,1,8 (ma magari 
ti sei solo sbagliato a scrivere), ma devi innanzitutto sapere se i 
dati vengono trasmessi in ascii o meno. Ad esempio con Siemens 
sicuramente non è Ascii, con Omron sicuramente si (in realtà può essere 
anche il contrario, ma al 99% è così).
Poi se i valori numerici sono bcd, hex, oppure binari grezzi.
Ma fa tutto parte del protocollo (Sysway, Modbus, ecc...), che viene 
specificato nella documentazione macchina.
Ciao
Alberto
-- 
Ho spiegato a mio nipote cos'è il compromesso: se per le vacanze tua 
madre vuole andare al mare e tuo padre invece in montagna, il 
compromesso è che si va al mare, ma il papà può portarsi gli sci.



Devi cercare di stabilire gli header della trasmissione, a volte sono STX  0x02
e ETX  0x03, poi la stringa e i CRC che possono essere nell' ultimo carattere.
Se riesci a determinare gli headers e quindi identifichi una stringa poi è più
semplice decodificare la comunicazione.
--
ciao
  Stefano

 incomprensibili...
Non so se già lo conosci, ma probabilmente PortMon ti può aiutare:
http://www.microsoft.com/technet/sysinternals/utilities/portmon.mspx
Bye, G. 


GRAZIE A TUTTI PER LA COLLABORAZIONE IL PRIMO PROBLEMA L?HO RISOLTO!
Adesso DEVO MANDARE VIA TCP/ip delle stringhe di testo come fare?
ho visto il componente winsocket come si usa???
grazie ancora a tutti!!

ho visto il componente winsocket come si usa???
http://www.vbsimple.net/index.htm?/cliserv/clser_02.htm
--
ciao
  Stefano