Page 1 sur 1

[R] Boucle Action et sleep

Posté : mar. 31 déc. 2019 10:57
par DimVar
Bonjour,

Soit la boucle while 1 - wend, dans celle-ci, Switch TrayGetMsg() - endswitch (pour surveiller le trayicon et ses menus).
Je souhaite exécuter une function tous les 15min.
Je pense à un sleep de 15mn, mais qui va forcement suspendre le traygetmsg... Quelle est la solution ?

Je pense avoir deja posé cette question, mais pas moyen de remettre la main sur ce topic, dsl.

Cdlt, Dimvar.

Re: [..] Boucle Action et sleep

Posté : mar. 31 déc. 2019 11:05
par DimVar
j'ai pensé mettre une condition if @min = 0 ou 15 ou 30 ou 45 then function.
Ca vous semble pertinent ?
While 1

   Switch TrayGetMsg()
     
      Case $Exit
         Exit 0

      Case $LogView
         _logview()

   EndSwitch
   
   If @MIN = 0 Or @MIN = 15 Or @MIN = 30 Or @MIN = 45 Then
      _AdminRight ()
   EndIf
   
WEnd
Merci.

Re: [..] Boucle Action et sleep

Posté : mar. 31 déc. 2019 11:40
par rgx
Bonjour,

Peut-être plutôt TimerInit et TimerDiff ? Si tu veux que premier démarre 15 minutes après le démarrage du programme et non pas à 0, 15, 30 et 45 ?

PS. À chaque déclenchement tu réinitialises pour ne pas avoir à manipuler des nombres trop grands.

Re: [..] Boucle Action et sleep

Posté : mar. 31 déc. 2019 13:25
par DimVar
Bonjour rgx,

Merci pour ces 2 fonctions. Je note.

Re: [..] Boucle Action et sleep

Posté : mar. 31 déc. 2019 19:30
par mikell
Le mieux serait encore d'utiliser LA fonction dédiée qui va bien :
(à mettre avant la boucle while)

AdlibRegister("function", 15*60*1000)

Re: [..] Boucle Action et sleep

Posté : lun. 06 janv. 2020 09:35
par DimVar
Oui en effet, c'etait bien cette fonction que j'avais deja utilisé, merci Mikell.