Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di colde
    Registrato dal
    Feb 2001
    Messaggi
    1,802

    Blocco form in ricezione dati da COM Port

    Ciao Alka,
    ho creato un form per poter testare la DLL che sto sviluppando ma ho un problema.
    Il funzionamento del sistema è questo:
    - il form contiene 3 bottoni, apertura connessione, chiusura connessione, ricezione dati;
    - clicco su un bottone e richiamo la funzione che mi apre la porta COM;
    - clicco su un bottone e richiamo la funzione che riceve i dati dalla porta COM finchè la connessione risulta aperta (ciclo While do);
    E qui nasce il problema. La ricezione dei dati funziona perfettamente ma mentre ricevo, il form rimane bloccato e quindi non posso chiudere la connessione e terminare la ricezione dei dati.

    Perchè succede questo? Naturalmente se non richiamo la funzione di ricezione dati, il bottone di chiusura della porta funziona. Credo che il sistema si blocchi poichè rimane impegnato nel loop dello scarico dati.

    Il codice del form per la ricezione dei dati è questo:

    if Conn then
    begin
    while Conn do
    begin
    TextReturn := Polling(PChar(Edit2.Text));
    Memo1.Lines.Add(TextReturn);
    end;
    end;

    Conn è la variabile che viene settata a true quando clicco il bottone di apertura connessione. Credo che sia questo loop a bloccare tutto ma non saprei come gestirlo dato che sono obbligato a scaricare dati finchè la connessione rimane aperta.

    Grazie
    www.beppegrillo.it
    Il blog di Beppe!!

  2. #2
    dovresti crearti un thread che si occupa della lettura della porta com
    ciao
    sergio

  3. #3
    Utente di HTML.it L'avatar di colde
    Registrato dal
    Feb 2001
    Messaggi
    1,802
    Stavo giusto seguendo questa strada, ora ho la conferma che è quella corretta.

    Grazie mille
    www.beppegrillo.it
    Il blog di Beppe!!

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da mondobimbi
    dovresti crearti un thread che si occupa della lettura della porta com
    Confermo semplicemente.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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.