Merci d'avance
[..] Executer une fonction en fin de prog.
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[..] Executer une fonction en fin de prog.
Bonjour peut on executer une fonction lorsque le prog se termine même s'il est forcé à la fermeture ou s'il crache ou pour n'importe quelle autre cause de sa fermeture ?
Merci d'avance
Merci d'avance
- blacksoul305
- Membre émérite

- Messages : 957
- Enregistré le : ven. 18 mars 2011 11:49
- Localisation : Au pays des programmeurs.
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Bonjour,
en cas de fermeture normale de l'ordinateur (pas normale = extinction depuis alimentation ou autre manière brutale) planifiée ou non, il y a la fonction OnAutoItExitRegister. Maintenant si ton programme crash véritablement, je ne pense pas qu'il puisse lancer une fonction. A part si tu as un check-up préventif avant d'inclus.
Bon courage !
en cas de fermeture normale de l'ordinateur (pas normale = extinction depuis alimentation ou autre manière brutale) planifiée ou non, il y a la fonction OnAutoItExitRegister. Maintenant si ton programme crash véritablement, je ne pense pas qu'il puisse lancer une fonction. A part si tu as un check-up préventif avant d'inclus.
Bon courage !
Étudiant en 2ème année de Licence Informatique.
- blacksoul305
- Membre émérite

- Messages : 957
- Enregistré le : ven. 18 mars 2011 11:49
- Localisation : Au pays des programmeurs.
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Je veux seulement dire par là qu'à moins que tu aies une fonction qui te permet de prévoir à l'avance un crash de ton programme, tu ne peux rien faire exécuter s'il crash.
Étudiant en 2ème année de Licence Informatique.
Re: [..] Executer une fonction en fin de prog.
ok merci quand même
Re: [..] Executer une fonction en fin de prog.
Et sinon est ce qu on peut detecter lorsque le gestionnaire des taches et actif et que mon programme est selectionné comme lorsque qu on veut le forcer à s'arreter ?
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Quel intérêt ? De plus cela ne couvrirait pas le cas d'arrêt demandé en ligne de commande ou par Process Explorer ou autre, par exemple via un autre programme. OnAutoItExitRegister() est quand même de très loin la solution la plus robuste et sans conteste la plus simple !
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..] Executer une fonction en fin de prog.
Et bien j'ai un prog qui contient de nombreuse données mais il contient de nombreux bug et lorsque qu'il y a un bug je voudrai l’arrêter avant un accident mais je tient a recup mes données c'est pour ça
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Il suffit de corriger les bogues.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..] Executer une fonction en fin de prog.
Merci Einstein 
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Tu es en train de nous dire que tu construis des avions de ligne qui ont une fâcheuse tendance à exploser en plein vol à haute altitude, provoquant la disparition corps et âmes de ses occupants, dont il ne reste rien après chaque accident.
Ta solution miracle est de greffer à chaque passager une plaque en platine irridié gravée à son état civil afin de pouvoir reconnaître les quelques restes humains lors de futurs accidents.
Je m'incline devant l'aspect génial de ta solution, néanmoins mon petit doigt me dit qu'il pourrait éventuellement en exister une autre.
Ta solution miracle est de greffer à chaque passager une plaque en platine irridié gravée à son état civil afin de pouvoir reconnaître les quelques restes humains lors de futurs accidents.
Je m'incline devant l'aspect génial de ta solution, néanmoins mon petit doigt me dit qu'il pourrait éventuellement en exister une autre.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..] Executer une fonction en fin de prog.
Énorme j'ai adoré mais ne fait ce que je voudrais c'est plutôt de récupérer le nombre pigeon que l'avion à croisé car il n'a aucun rapport de près ou de loin avec le crach ou le bug du prog en fait le problème vient du fait que mon ordi surchauffe parfois et fait planter certains prog
Mais bon ducoup il n'y a pas de soluce pour retrouver le nombre de pigeons si l'avion se crach ?
Mais bon ducoup il n'y a pas de soluce pour retrouver le nombre de pigeons si l'avion se crach ?
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Le concept même de crash sous-entend que c'est imprévublacksoul305 a écrit :...à moins que tu aies une fonction qui te permet de prévoir à l'avance un crash de ton programme
Mais s'il existe une fonction capable de prévoir un crash imprévu, faut absolument faire breveter
Un tel prog ne devrait pas être autorisé à tournerBonjour a écrit :Et bien j'ai un prog qui contient de nombreuse données mais il contient de nombreux bug
Sinon la solution s'appelle surveiller la t° de l'ordi (se munir d'aspirine) et surtout sauvegardes + travail sur une copie des données avec update s'il n'y a eu aucun bug
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Re: [..] Executer une fonction en fin de prog.
OUi faire une sauvegarde sur un dossier txt c'est déjà au point depuis quelque message mais bon s'il existe une autre solution je suis preneur.
Sinon j'avais aussi pensé a lancer un autre prog qui récupère les données ( que j'ai appris à faire grâce à un autre de mes post ).
Sinon j'avais aussi pensé a lancer un autre prog qui récupère les données ( que j'ai appris à faire grâce à un autre de mes post ).
- jchd
- AutoIt MVPs (MVP)

- Messages : 2284
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
J'ai trouvé : c'est Steve Balmer qui se cache derrière le pseudo Bonjour.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..] Executer une fonction en fin de prog.
C'est un compliment ?
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Tu peux quand même savoir si ton script à planté ou a été forcé de s'arrêter. Il suffirait d'avoir un script lanceur et de récupérer le code de retour du script lancé. Si le code n'est pas 0, on peut supposer qu'il y a eu un problème.
Bien sûr, il y a peu d'intérêt puisque le script plantera quand même ! Mais ça pourrait avoir une utilité si tu souhaites, par exemple, relancer automatiquement le script lors d'un plantage. C'est comme vouloir faire redécoller un avion qui vient de se crasher…
Code : Tout sélectionner
#include <MsgBoxConstants.au3>
Local $r = RunWait("C:\Program Files (x86)\AutoIt3\autoit3_x64.exe mon_autre_script_qui_plante_tout_le_temps.au3")
MsgBox($MB_SYSTEMMODAL, "", "Code de retour : " & $r)De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Re: [..] Executer une fonction en fin de prog.
OK c'est une bonne idée mais est ce que run fonctionne avec un autre script car chez moi sa ne marche pas je dois utiliser ShellExecute
Re: [..] Executer une fonction en fin de prog.
La meilleure solution reste d'acheter des ventilos et de la pâte thermique (voir passer prendre des glaçons tous les matins au Mc Do')
.
Sinon, tu peux faire un exécutable que tu lances régulièrement via une tâche planifiée : son travail sera de détecter si le programme principal fonctionne ou non, et le relance si besoin.
Sinon, tu peux faire un exécutable que tu lances régulièrement via une tâche planifiée : son travail sera de détecter si le programme principal fonctionne ou non, et le relance si besoin.
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
- orax
- Modérateur

- Messages : 1479
- Enregistré le : lun. 23 mars 2009 04:50
- Localisation : ::1
- Status : Hors ligne
Re: [..] Executer une fonction en fin de prog.
Ben oui, c'est ce que j'avais fait dans l'exemple. Sinon ShellExecuteWait pourrait aller aussi.Bonjour a écrit :OK c'est une bonne idée mais est ce que run fonctionne avec un autre script car chez moi sa ne marche pas je dois utiliser ShellExecute
Sinon si vraiment ça surchauffe trop, achète quelques bidons d'azote liquide à la droguerie du coin.
Avec ça la relance est automatique si le script s'est mal terminé.
Code : Tout sélectionner
Do
$r = RunWait("C:\Program Files (x86)\AutoIt3\autoit3_x64.exe mon_autre_script_qui_plante_tout_le_temps.au3")
Until $r = 0De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)

