Application en attente invisible perturbe windows.
crogger
Messages postés32Date d'inscriptionvendredi 5 avril 2002StatutMembreDernière intervention23 octobre 2006
-
6 avril 2002 à 23:28
cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 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!
cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 septembre 20062 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...