Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

VB applicatie hangt op invoer com poort

Pagina: 1
Acties:

  • bechown
  • Registratie: Augustus 2006
  • Laatst online: 09-05-2023
Ben bezig een programma te programmeren dat com poorten kan uitlezen. Dit werkt al. Alleen het programma moet op de com poort blijven kijken tot er aan bepaalde data wordt voldaan.

Zodra het programma gestart wordt blijft mijn hele form hangen tot er juiste invoer komt op de compoort.

Ik maak gebruik van:
System
System.IO

Dim sp As SerialPort
sp = New SerialPort()

en dan sp.ReadLine() om de poort uit te lezen. Redelijk simpel.

Hoe zorg ik dat de applicatie niet blijft hangen op de invoer van de compoort. Een timeout heeft geen nut aangezien ik moet wachten tot de invoer correct is. Het antwoord kan redelijk makkelijk zijn aangezien ik nog niet zo lang bezig ben met programmeren. Weet alleen niet waar ik naar moet zoeken om dit op te lossen.

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Je kunt toch volcontinue een loop doorlopen met daarin een Thread.Sleep (250) en daarin controleren of BytesToRead groter is dan 0. Op dat moment roep je een methode ProcessInput oid aan en na verwerking van de inkomende data, keer je weer terug naar de hoofd loop.

If it isn't broken, fix it until it is..


  • bechown
  • Registratie: Augustus 2006
  • Laatst online: 09-05-2023
Niemand_Anders schreef op maandag 10 maart 2008 @ 14:09:
Je kunt toch volcontinue een loop doorlopen met daarin een Thread.Sleep (250) en daarin controleren of BytesToRead groter is dan 0. Op dat moment roep je een methode ProcessInput oid aan en na verwerking van de inkomende data, keer je weer terug naar de hoofd loop.
Het was niet hoe ik het wou oplossen maar je hebt me erg geholpen.. Ik ben verder gaan kijken hoe de class thread werkt en doordat ik nu mijn eigen class de threadclass gebruik waarin ik de loop heb gebouwd kan ik wel mijn applicatie verder laten lopen en de thread afsluiten wanneer ik dat wil.. _/-\o_

  • fleppuhstein
  • Registratie: Januari 2002
  • Laatst online: 21-10 21:48
Niemand_Anders schreef op maandag 10 maart 2008 @ 14:09:
Je kunt toch volcontinue een loop doorlopen met daarin een Thread.Sleep (250) en daarin controleren of BytesToRead groter is dan 0. Op dat moment roep je een methode ProcessInput oid aan en na verwerking van de inkomende data, keer je weer terug naar de hoofd loop.
In die sleep hangt je form ook.