Application en attente invisible perturbe windows.

crogger Messages postés 32 Date d'inscription vendredi 5 avril 2002 Statut Membre Dernière intervention 23 octobre 2006 - 6 avril 2002 à 23:28
cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 - 7 avril 2002 à 00:08
Salut, j'ai mon appli qui se lance au demarage de windows qui permet de detecter la presence de connexion internet avec une boucle WHILE
ex:while monip<>127.00.1 (NmHttp.localip) do....
Cependant cette boucle empeche win2k de se fermer, cad que celui-ci ne veut plus s'eteindre dans que je ferme pas mon appli.avec le gestionnaire de taches..
En bref: quand le prog est en boucle, je ne peut plus eteindre le pc, malgré application.processmessages.
+simplement:comment mettre une appli en "fond" qui "veille" sans gener windoz ...merci pour votre patience a tous!

Salutations, Crogger...

4 réponses

cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 2
6 avril 2002 à 23:45
J'ai deux solutions à proposer :
- Ne pas utiliser une boucle, mais un Timer qui teste l'adresse IP de temps en temps ( dans ce cas l'application n'utilise que peu de resources CPU )

- Si tu préfère utiliser le ProcessMessages il faut ajouter les éléments suivant sur la fiche principale :
Var Fin:Boolean;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
Fin:=True;
end;

Modifie ta boucle de la façon suivante :
Fin:=False;
while (monip<>127.00.1)And Not Fin do....
( processMessages doit être appelé dans la boucle pour que ça fonctionne )

REM:C'est marrant il me semble avoir déjà proposé cette solution il y a peu de temps...

--- Nono du Moulin ---
0
cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 2
6 avril 2002 à 23:54
J'ai une troisième solution :
Utilise l'événement OnIdle du TApplication ( voir aide delphi )

--- Nono du Moulin ---
0
crogger Messages postés 32 Date d'inscription vendredi 5 avril 2002 Statut Membre Dernière intervention 23 octobre 2006
7 avril 2002 à 00:02
merci! je v voir tout ca ! tu dis en avoir deja parlé, mais ou ?
mercipour ton aide :-)

Crogger
0
cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 2
7 avril 2002 à 00:08
En réponse à ta question d'hier...

--- Nono du Moulin ---
0
Rejoignez-nous