SerialPort e Errore Cross-Thread

giovedì 19 gennaio 2012 - 13.10
Tag Elenco Tags  VB.NET  |  Visual Studio Express

Alex22 Profilo | Newbie

Ciao,
ho una piccola applicazione, costituita da una Form, una Label e una SerialPort, Il codice è il seguente:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Praticamente appena arrivano dati sulla porta seriale, si genera la Sub Ricezione, la lettura avviene correttamente ma quando arriva alla riga:

Label1.text = Label1.text & Ricezione(i)
mi da il seguente errore:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Non sono un esperto di Vb.net e non ho capito bene come porterla gestire, sulla guida si parla del metodo invoke, ma non l'ho ben capito.

Qualche suggerimento?

luigidibiasi Profilo | Guru

devi togliere il thread che legge e fare tutto nel ciclo principale oppure gestire la modifica della propreità text tramite i methodinvoker
Luigi Di Biasi


http://www.dibiasi.it/
http://netsell.dibiasi.it - ecomm software -
http://blogs.dotnethell.it/luigidibiasi/
http://yadamp.unisa.it/ - YADAMP CMS -

Alex22 Profilo | Newbie

avrei risolto così:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

in cui "Elaboradati" è una sub su cui posso manipolare i dati e aggiornare i controlli sulla Form.
Che ne dite?

totti240282 Profilo | Guru

Si ma cosi a "mi" delegato non gli passi la stringa da elaborare ?
C'è solo un capitano !!!!!!

Alex22 Profilo | Newbie

In effetti hai ragione, farò come dici tu, è più corretto. Nel mio caso funzionava perché "LetturaTessera" è una variabile globale, quindi accessibile anche nella routine di elaborazione dati.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5