Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati?
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati?
Dopo più di un anno dal primo test drive ci siamo rimessi al volante della Renault 5 E-Tech Electric, questa volta utilizzandola come prima auto per circa due settimane. Scoprite con noi se il progetto convince ancora
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-03-2003, 14:14   #1
isola81
Senior Member
 
L'Avatar di isola81
 
Iscritto dal: Dec 2000
Città: Castelvetrano e Palermo
Messaggi: 209
[Builder C++] Strano comportamento di un loop!!!

Sto realizzando un applicazione con il Builder C++ ed ho notato un comportamento strato.
Ecco il codice in questione:

while(recv_buff!=KEY_ESC){
...
err=recv(asock, &recv_buff, 1, 0);
Memo1->Lines->Add(AnsiString(recv_buff));
send(asock, &recv_buff, 1, 0);
...
}

Le linee dell'oggetto Memo1 non vengono visualizzate man mano che vengono ricevute ma tutte assieme quando il ciclo si chiude mentre la funzione send fa in suo lavoro ad ogni ciclo!!!



Mi sapreste dare una mano??? THX
__________________
Le mie foto..
isola81 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 14:22   #2
BountyKiller
Utente sospeso
 
Iscritto dal: Oct 2002
Messaggi: 2156
l'argomento del while è una condizione logica quindi per fare il confronto non devi usare l'operatore di assegnazione = ma quello di confronto ==
prova e fammi sapere.
ciao!!
BountyKiller è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 15:09   #3
lombardp
Senior Member
 
L'Avatar di lombardp
 
Iscritto dal: Jun 2002
Città: Firenze
Messaggi: 630
Re: [Builder C++] Strano comportamento di un loop!!!

Quote:
Originally posted by "isola81"

Le linee dell'oggetto Memo1 non vengono visualizzate man mano che vengono ricevute ma tutte assieme quando il ciclo si chiude mentre la funzione send fa in suo lavoro ad ogni ciclo!!!

Mi sapreste dare una mano??? THX
Non ho mai programmato in BC++ (ho usato solo VC++), per cui avanzo solo un'ipotesi: possibile che manchi una sorta di comando di "refresh" dell'interfaccia grafica subito dopo Memo1->Lines->Add ?
__________________
---> Lombardp
CSS Certified Expert (Master Level) at Experts-Exchange
Proud user of LITHIUM forum : CPU technology
Webmaster of SEVEN-SEGMENTS : Elettronica per modellismo
lombardp è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 15:16   #4
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Metti Application->ProcessMessages() subito dopo la scrittura sulla memo.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 16:11   #5
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
Re: [Builder C++] Strano comportamento di un loop!!!

Quote:
Originally posted by "isola81"

Sto realizzando un applicazione con il Builder C++ ed ho notato un comportamento strato.
Ecco il codice in questione:

while(recv_buff!=KEY_ESC){
...
err=recv(asock, &recv_buff, 1, 0);
Memo1->Lines->Add(AnsiString(recv_buff));
send(asock, &recv_buff, 1, 0);
...
}

Le linee dell'oggetto Memo1 non vengono visualizzate man mano che vengono ricevute ma tutte assieme quando il ciclo si chiude mentre la funzione send fa in suo lavoro ad ogni ciclo!!!



Mi sapreste dare una mano??? THX

metti Memo1->Update();
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 16:32   #6
isola81
Senior Member
 
L'Avatar di isola81
 
Iscritto dal: Dec 2000
Città: Castelvetrano e Palermo
Messaggi: 209
Quote:
Originally posted by "ilsensine"

Metti Application->ProcessMessages() subito dopo la scrittura sulla memo.
Grazie Mille!!
Adesso il mio caro server TELNET funziona perfettamente!!!

Effettivamente non conoscevo questa funzione e devo dire che in certi casi risulta veramente utile infatti forza l'applicazione a processare gli eventi che per un motivo qualsiasi sono rimasti in query!!!

__________________
Le mie foto..
isola81 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 16:45   #7
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Attento: è un'arma a doppio taglio, imparerai presto perché
Se riesci a risolvere in qualche altro modo sarebbe consigliabile.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 17:13   #8
isola81
Senior Member
 
L'Avatar di isola81
 
Iscritto dal: Dec 2000
Città: Castelvetrano e Palermo
Messaggi: 209
Ti riferisci ai casi in cui gli eventi in quere sono troppi??

PS: Non vorrei aprire un altro thread, potresti dirmi come faccio con il builder ad includere tutte le librerie necessarie nell'eseguibile per non avere alcun proplema di portabilità!!! THX
__________________
Le mie foto..
isola81 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 19:52   #9
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originally posted by "isola81"

Ti riferisci ai casi in cui gli eventi in quere sono troppi??
Ehm...no. Prova a premere due volte il pulsante

Quote:
PS: Non vorrei aprire un altro thread, potresti dirmi come faccio con il builder ad includere tutte le librerie necessarie nell'eseguibile per non avere alcun proplema di portabilità!!! THX
Tra le opzioni del progetto, devi includere le rtl (deseleziona use dynamic rtl nel tab linker) e i pacchetti della vcl (deseleziona build with runtime packages nel tab packages)
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 20:05   #10
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
Quote:
Originally posted by "ilsensine"

Attento: è un'arma a doppio taglio, imparerai presto perché
Se riesci a risolvere in qualche altro modo sarebbe consigliabile.

infatti, negli esempi di BCB, si riesce a fare ciò che si vuole, anche ad interrompere il programma, senza che venga fatto uso della Application->ProcessMessages()

ma non ci ho mai nasato più di tanto per capirne il funzionamento
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2003, 20:11   #11
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
ehi, isola81 prova questo e dimmi se ti funziona


ShellExecute(0, "print" , "mpagina.htm",NULL, NULL,SW_SHOW );
misterx è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati? Renault 5 elettrica al giudizio definitivo: solo...
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
TSMC accelera sui 1,4 nanometri: produzi...
Razer compra StreamElements: cambia tutt...
Il Task Manager di Windows arriva su Mac...
Sony: PS5 resta più conveniente d...
Ubisoft spegne uno dei suoi esperimenti ...
Garante Privacy: multa da 9,5 milioni di...
Windows 11, Microsoft promette un sistem...
Windows 11, l'ultima build sperimentale ...
YouTube cancella i canali ASMR più...
Valgono miliardi, ma non pubblicano rice...
ROG Falchion Ace 75 HE: ASUS fa sul seri...
Google rilascia il primo teaser dei Pixe...
Attenti a queste TV Box: a TV spento si ...
Radeon RX 9050: arriva il primo confront...
L'AI Act più severo slitta al 202...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 07:08.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v