LECTURE D'UN FICHIER EN TEMPS RÉEL, ÉQUIVALENT DU TAIL -F SOUS UNIX

fgdarwin Messages postés 2 Date d'inscription vendredi 2 mai 2003 Statut Membre Dernière intervention 14 juin 2005 - 14 juin 2005 à 10:38
cs_benjeddi Messages postés 66 Date d'inscription vendredi 26 janvier 2007 Statut Membre Dernière intervention 2 janvier 2008 - 19 oct. 2007 à 12:04
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/32019-lecture-d-un-fichier-en-temps-reel-equivalent-du-tail-f-sous-unix

cs_benjeddi Messages postés 66 Date d'inscription vendredi 26 janvier 2007 Statut Membre Dernière intervention 2 janvier 2008
19 oct. 2007 à 12:04
salut je veux juste savoir le role de fichier dll qui tu as ajouter
user32.dll
Merci
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
19 juin 2007 à 09:16
C'est pour ça que je reprends mon commentaire d'origine sur la notion de tube de communication, stream ou redirection de flux qui, je pense fonctionne indépendament d'un paramétre temps et la ont pourait donc parler de temps réel, je crois ...
genre (en langage "exotique" :
while true
write data in file
printscreen data
end while
et non pas :
void timer1_tick;
textbox1 = openedfiledata;


Ce n'est qu 'une observation et en rien une critique sur ton code qui ma fois fonctionne plutot bien, j'etait parti sur un truc de ce genre en VB et j'ai aussi utilisé un timer.
cs_malibu23 Messages postés 36 Date d'inscription samedi 14 décembre 2002 Statut Membre Dernière intervention 15 avril 2008
18 juin 2007 à 18:26
Exactement il rafraichis toutes les 100 ms quand tu positionne sur zéro. Si tu rafraichis plus souvent tu va pénaliser le reste des applications.
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
17 juin 2007 à 20:10
ha oki, donc tu ouvres le fichier cycliquement toute les 0 secondes ?
cs_malibu23 Messages postés 36 Date d'inscription samedi 14 décembre 2002 Statut Membre Dernière intervention 15 avril 2008
15 juin 2007 à 19:37
Si tu regle le timer sur 0, comme c'est le cas par défaut, alors ca correspond à du temps reel.
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
14 juin 2007 à 11:48
Je n'est pas encore regardé ta source mais un point m'interpel, tu mets en avant l'aspect "Temps réel" et tu dit "regler pour chacun la vitesse de rafraichissement." cela semble condradictoire, sous linux par exemple, il n'y a pas de notion "temps" c'est plutot une notion de tube de communication je crois, ou voir de redirection de flux en direct et pas "décalé" par un facteur temps.
cs_badrbadr Messages postés 475 Date d'inscription jeudi 19 juin 2003 Statut Membre Dernière intervention 3 novembre 2008 1
25 juin 2005 à 20:29
merci pour ce programme
ca tombe bien, j apprend a utiliser les Stream, et ton programme va me servir
cs_malibu23 Messages postés 36 Date d'inscription samedi 14 décembre 2002 Statut Membre Dernière intervention 15 avril 2008
15 juin 2005 à 09:06
Petite rectification la solution du ScrollToCaret ne fonctionne pas dans tt les cas, en outre il faut que le RichTextBox est le focus pour que ca marche or c'est pas le but.

Deux solution ou tu mémorise ou se trouve le focus et juste aprés avoir inserer des lignes du donne le focus au RichTextBox, tu fais un ScrollToCaret() puis tu repositionne le focus. Solution assez lourde visuellement ou alors tu fais comme j'ai fais avec un SendMessage.

JM
fgdarwin Messages postés 2 Date d'inscription vendredi 2 mai 2003 Statut Membre Dernière intervention 14 juin 2005
14 juin 2005 à 10:38
Bonjour,
juste pour faire avancer le truc, lors du chargement du texte par AppendText, le curseur est la la fin du texte on peut donc utiliser directement ScrollToCaret() à la place du SendMessage: le WM_ est certe plus direct mais non portable!
Txt.ScrollToCaret();
//SendMessage(Txt.Handle, WM_VSCROLL, SB_BOTTOM, 0);

Bonne journée à toutes et tous
Rejoignez-nous