Bug dans le lancement d'un script a heure reguliere - Divers - Programmation
Marsh Posté le 23-10-2003 à 20:25:40
1) Met ton script sur un serveur web en local.
2) Met cette commande dans ton gestionnaire de tâches (en modifiant au besoin l'url)
iexplore.exe "http://localhost/monscript.php" |
3) Dans le gestionnaire des tâches toujours, tu indiques "fermer la tâche au bout de xx minutes"
Et adieu le problème. (d'ailleurs, t'as même pas besoin de fermer IE)
Marsh Posté le 23-10-2003 à 20:27:09
En fait, iexplore marche pas.
explorer.exe "http://www.google.com" |
Ca ça marche par contre.
Marsh Posté le 23-10-2003 à 20:35:19
Bon j'ai mis a jour le fichier bat. je vais attendre les prochaines mises a jour mais je ne sais pas si ca va resoudre mon pbr...
Marsh Posté le 23-10-2003 à 20:39:32
fais ce que je te dis, tu te prendras moins la tête...
Marsh Posté le 23-10-2003 à 20:57:12
Dans l'onglet Parametres j'ai coche la case "Arreter la tache si elle s'execute durant:" et pour la duree j'ai mis 1min. c'est le mini qu'on peut mettre et l'execution du script prends quelques sec (Le max que j'ai vu c'est 25sec qd ca lag).
Mais bon ca me ferme pas la fenetre de IE au bout d'une minute car la tache a finie de s'executee (le script a fini)
...
Marsh Posté le 23-10-2003 à 21:26:46
Autre alternative peut etre c'est a la fin de mon script rediriger sur une autre page.
Style je lance "monscript.php" a la fin il redirige vers une autre page "leurre.php" par exemple. Et a la prochaine relance automatique comme il va voir que la page c'est pas "monscript.php" donc il va le mettre a jour.
Qu'en penses-tu?
le seul pbr c'est que je ne sais pas faire de redir
Marsh Posté le 23-10-2003 à 21:49:21
ouais, ça devrait marcher en effet, mais c'est un peu goret
Marsh Posté le 23-10-2003 à 21:52:48
Sinon, essaie ma commande, avec /n à la fin.
Il ouvrira une nouvelle fenêtre à chaque fois
Marsh Posté le 23-10-2003 à 21:53:50
sinon, si t'es patient, attends demain, je te file le code en VBS qui fonctionnera et sera plus propre (on verra même pas que l'explorateur est en train de faire tourner le script)
Marsh Posté le 23-10-2003 à 23:05:41
Effectivement c'est une methode de gros sale, mais bon on fait comme on peut...
Le truc d'ouvrir une fenetre a chaque ouais j'y ai pense. mais justement tout la semaine prochaine je suis pas chez moi et avec un script qui se lance toutes les 4 mins ca fait plus de 2500 fenetres de IE au bout de 7 jours
Je serai patient jusqu'a demain. pas de pbr
Marsh Posté le 24-10-2003 à 00:20:39
ok.
pour une petite mise en bouche, ça donne un truc du genre :
dim inet
set inet = CreateObject("Application.InternetExplorer" )
inet.navigate "http://localhost.monscript.php"
do while not inet.ReadyState = OK
doevents
loop
inet.Close
set inet = nothing
Mais l'objet s'appelle pas comme ça, et je me souvient plus de la valeur de la constante qui dit que IE a fini de charger la page...
www.devguru.com tu devrais je crois trouver ces infos
Marsh Posté le 27-10-2003 à 15:53:27
Salut MagicBuzz,
T'as des nouvelles pour le script VBS? La j'avoue que j'y connais absolument rien en VBS. Si tu me dis po comment faire je ne saurais po par moi meme
Marsh Posté le 27-10-2003 à 16:25:02
Tiens, je pensais justement à ton problème, et je me disais "tiens, c'était quel topic au fait ? puisqu'il se manifeste pas, il attendra un jour de plus..."
Pas de pot, tu viens de te réveiller
Alors :
|
Marsh Posté le 27-10-2003 à 17:28:48
desole de t'avoir fait une fausse joie
ce script j'en fait koi? je le mets dans un fichier .bat que je lance avec le planificateur de tache.
Faut le compiler?
T'es dit j'y connais rien en VBS. c'est meme la 1ere fois que j'en vois
Marsh Posté le 27-10-2003 à 17:30:50
Non, tu le met dans un fichier *.vbs
et tu le lance comme un programme compilé
Marsh Posté le 27-10-2003 à 17:31:17
Le seul impératif, c'est que tu ait IE5 minimum et Windows 98 pour avoir tous les objets installés.
Marsh Posté le 27-10-2003 à 18:10:22
J'ai Win2k et IE6 donc ca devrait rouler.
J'ai mis le script dans un fichier *.vbs. j'ai change l'url (j'ai mis celle de google pour le 1er test) et il me retourne une erreur
ligne: 8
caract: 5
erreur: type incompatible: 'DoEvents'
code: 800A000D
En gros c'est le DoEvents qu'il aime pas
Marsh Posté le 27-10-2003 à 19:30:17
argh...
bah il est con ton truc
faut que tu trouves comment faire un sleep alors. chais pu comment on fait...
je regarde en vitesse
Marsh Posté le 27-10-2003 à 19:45:39
Remplace "DoEvents" par "WScript.Sleep 100" (fait des pauses de 1/10 seconde pour laisser le temps au script de s'éxécuter sans bouffer tout le CPU)
C'est moins joli mais bon...
PS: si tu attends qu'il se passe quelquechose quand tu exécutes ton script, alors modifie-le de la façon suivante : (mais vire les modification ensuite, c'est juste pour voir ce qu'il fait)
|
VBS c'est maxi pratique pour automatiser des trucs sur Internet (on peut même programmer une machine à flooder sur le forum )
Marsh Posté le 27-10-2003 à 23:08:56
Rhoooooo ca marche avec le sleep.
T'es un Dieu MagicBuzz
En tout cas je te remercie beaucoup pour ton aide. C'est franchement bien de partager tes connaissances et d'aider les autres.
PS: sais po si tu te souvient j'avais fait un post un peu avant celui-la pour optimiser l'affichage de tableaux. Tu m'avais donne une solution mais je n'ai pas vraiment eu le tps d'y regarder pour le moment. Mais je garde ca dans un coin. Tu risque de voir remonter ce topic
Marsh Posté le 23-10-2003 à 20:06:08
Bonjour,
J'ai un script PHP que je lance toutes les 30mins et dont le role est de remplir une table avec des valeurs recuperees sur une page web. Je fais ca avec le gestionnaire de tache planifiee. Jusque la pas de pbr sauf que lorsqu'il a fini la tache il laisse la page de IE ouverte et lorsque 30mins plus tard il relance la tache ben la page se met pas a jour. Par contre si entre 2 maj je ferme la page IE, au moment venu il ouvre une nouveal page et fait la maj correctement
La procedure pour ouvrir le script est simple. J'ai fait un fichier bat ou dedans j'ai mis la ligne de commande suivante: "start c:\web\monscript.php"
Et avec le gestionnaire de tache je lance ce fichier BAT.
Pour remedier a mon pbr je pensais, une fois le script fini, de fermer la fenetre avec un javascript du style "windows.close" mais je suis sous win2k et il me demande de confirmer la fermeture de la fenetre...
Quelqu'un aurait une solution... svp
Merci pour vos reponses