Exécuter des instructions à intervalle régulier défini

Résolu
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015 - Modifié par ucfoutu le 30/03/2015 à 00:26
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015 - 30 mars 2015 à 01:09
Bonjour,
Je souhaiterais avoir un petit coup de pouce ou indications sur la programmation d'un code qui me permettrais toutes les 10 min de m'afficher dans un control webbrowser des pages html présentes dans un répertoire et de façon aléatoire.
Merci d'avance <3,

10 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 mars 2015 à 07:13
Bonjour,
Où se situe très précisément ta difficulté ? ==>>
1) exécuter des instructions (quelles qu'elles soient) toutes les 10 minutes ?
2) choisir de manière aléatoire dans un répertoire ?
3) afficher une page html choisie ?
En te rappelant les règles de ce forum : une seule question spécifique et parfaitement isolée par discussion.

0
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015
29 mars 2015 à 10:24
Les deux premières me pose un réel soucis car en ce qui concerne la troisième il me semble que ca me donne ca :
webbrowser1.Navigate App.path & "page1.html"
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 29/03/2015 à 11:39
Je te le répète donc : nous ne traitons ici qu'une seule difficulté, parfaitement isolée et non deux (surtout à ce point distinctes).
Une autre fois, donc : LAQUELLE veux-tu traiter ici ? ==>> la 1) ou la 2) ?
(comme tu le constates, je m'abstiens même de dire un seul mot à propos de la 3) ... ni même du chemin qui y est défini . Le faire, serait déjà déroger )

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015
29 mars 2015 à 23:51
Avec un peu de recherche je crois pouvoir repondre à ma premiere question :
voici un minuteur:

var1 = Timer + 300
Do While var1 > Timer
DoEvents
Label8.Caption = Int(var1 - Timer)
Loop


Cela vous parait juste ?
Reste à trouver la technique aléatoire pour la sélection de fichiers
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
30 mars 2015 à 00:01
Je ne répondrai que lorsque tu auras enfin décidé ce que je ne cesse de te demander :
Un seul problème par discussion.
Tu sembles avoir choisi de traiter le timer ?
- confirme le et tu auras ma réponse A CE SEUL PROPOS (ta solution est mauvaise à divers titres).
- si oui, ne parle alors même pas de l'autre point dans cette discussion.
0
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015
30 mars 2015 à 00:16
Effectivement sur ce sujet je n'évoque que le timer qui me servira à déclencher une action futur que j'évoquerais dans un autre sujet !
Afin de rester dans le sujet Timer est il possible de modifier le titre du sujet en cours, de le suprimer ou bien dois je en créer un autre ?
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
30 mars 2015 à 00:25
Bien.
Je vais modifier ce titre.
Regarde ce que fait ceci :
Sur un form : un bouton Command1, un label Label1 et un Timer Timer1
Ce code :
Option Explicit
Private Sub Command1_Click()
Timer1.Enabled = True
Timer1.Interval = 100
End Sub

Private Sub Timer1_Timer()
Static toto As Long
Dim reste As Integer, duree As Integer
duree = 5 ' ===>> pour 5 secondes ==>> pour 10 minutes, c'est 600 sec qu'il te faut mettre
If toto = 0 Then toto = Timer - duree
If Abs(Timer - toto) >= duree Then
MsgBox "remplace cette msgbox par les instructions que tu veux exécuter"
toto = Timer
Exit Sub
End If
' les lignes qui suivent ne sont à écrire que si
' tu veux afficher le temps restant dans un label
reste = Int(duree - Abs(Timer - toto))
If reste >= 0 Then
Label1.Caption = "Reste(nt) : " & Int(duree - Abs(Timer - toto)) & " seconde(s)": DoEvents
End If
End Sub

0
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015
30 mars 2015 à 00:38
Merci beaucoup ! sinon pourquoi mon résultat est faux ?
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
30 mars 2015 à 00:51
1) il n'afficherait que le temps restant, toutes les secondes
2) pour qu'une instruction soit exécutée au bout de ce laps de temps, il faudrait une autre boucle dans laquelle celle-ci serait imbriquée
3) tu entendrais vite le ventilateur de refroidissement de ton processeur commencer à s'énerver.
Si problème réglé ===>> n'oublie pas de libérer cette discussion.
Si tu ouvres une autre discussion relative aux instructions à exécuter dans ce timer, ne traite que de ces instructions. Je ne veux même pas la moindre allusion à l'existence du minuteur mis ici en place (il faut apprendre à sérier les problèmes. Leur "assemblage" est à ta seule charge.
0
Jessica-Normande Messages postés 24 Date d'inscription vendredi 6 février 2015 Statut Membre Dernière intervention 11 avril 2015
30 mars 2015 à 01:09
Merci pour toutes ces explications !
0
Rejoignez-nous