[R] Suspendre l'arrêt du système

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

[R] Suspendre l'arrêt du système

#1

Message par TheFireman57 »

Bonjour,

J'ai un programme important a réaliser et j'ai un problème avec la suspension de l'arrêt du systéme.

J'ai aucune mauvaise intension !!!

Je m'explique je voudrais détecter l’arrêt du système (même si c'est possible la fermeture de la session) et après l'avoir détecter l’empêcher j'ai donc ceci :

Code : Tout sélectionner

Func arret()
    If($arretOrLoggoff == 4) Then
        GUICtrlSetData($log, ">> Demande d'arrêt pour extinction du système")
        Run("C:\windows\system32\shutdown.exe -a")
        GUICtrlSetData($log, ">> Arrêt pour extinction du système Refusé")
        $stop = 1
    ElseIf($arretOrLoggoff == 3) Then
        GUICtrlSetData($log, ">> Demande d'arrêt pour fermeture session")
        Run("C:\windows\system32\shutdown.exe -a")
        GUICtrlSetData($log, ">> Arrêt pour fermeture session Refusé")
        $fermeture = 1
    EndIf
EndFunc
 
Mais ce n'est pas au point :cry:
Merci a vous pour vos futurs réponses :wink:
Modifié en dernier par TheFireman57 le mer. 11 juin 2014 21:21, modifié 3 fois.
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: Suspendre l'arrêt du systéme

#2

Message par jguinch »

TheFireman57, merci de changer le titre du sujet pour qu'il soit conforme aux règles de présentation d'un message.
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: Suspendre l'arrêt du systéme

#3

Message par TheFireman57 »

jguinch a écrit :TheFireman57, merci de changer le titre du sujet pour qu'il soit conforme aux règles de présentation d'un message.
Excuser moi je n'avais pas lu ces règles car je suis nouveau sur le forum.

Merci et sinon vous pouvez m'aider ?
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#4

Message par jguinch »

Je pense que tu pourras détecter l'arrêt / fermeture de session, mais l'annuler, c'est pas évident.
Ce que tu peux faire, c'est temporairement bloquer l'arrêt en utilisant _WinAPI_ShutdownBlockReasonCreate...
Quel est le but du script ?

Et pas la peine de crier, on n'est pas sourds ! (écris plus petit, c'est mieux :) )

Edit : regarde l'exemple de la fonction _WinAPI_SetProcessShutdownParameters
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#5

Message par TheFireman57 »

Bonjour,

Merci pour cette réponse et voila mon projet : http://fr.openclassrooms.com/forum/suje ... e-86229674

:)
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#6

Message par Tlem »

Bonsoir.
Si on fait abstraction de Windows XP, il me semble qu'il est possible d'intervenir à différents stades de l'état d'un PC par le planificateur de tâches.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#7

Message par TheFireman57 »

jguinch merci pour ta réponse cette technique fonctionne parfaitement mais je cherche a afficher ma GUI J'aimerais donc que pendant que la fonction _WinAPI_ShutdownBlockReasonCreate block l'arrêt un autre programme coupe complétement l'arrêt.

J'ai trouvé ça mais peut être que je l'utilise mal :

Code : Tout sélectionner

DLLCall('AdvAPI32', 'Int', 'AbortSystemShutdown')
J'ai trouvé ça aussi :

Code : Tout sélectionner

Run("C:\windows\system32\shutdown.exe -a")
Et ça :

Code : Tout sélectionner

taskkil shutdown /f
Help Je ne sais plus quoi faire :cry: :cry: :cry: :cry: :cry: :cry:

Et Tlem peut tu développé ? :oops:
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#8

Message par jguinch »

Sous Windows 7, j'ai bien peur qu'on ne puisse pas annuler l'arrêt si facilement...

Pour AbortSystemShutdown, c'est presque ça :wink:

Code : Tout sélectionner

Func _AbortSystemShutdown()
    $res = DllCall("Advapi32.dll", "int", "AbortSystemShutdown", "str", "localhost")
    If IsArray($res) AND $res[0] <> 0 Then Return 1
    Return 0
EndFunc
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#9

Message par TheFireman57 »

Tu as dit sous Windows 7 mais aurait tu une solution pour Xp ? et merci pour ta patience et ton aide.
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#10

Message par TheFireman57 »

Up

C'est pour demain personne n'a la solution ? :cry:
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#11

Message par Tlem »

Bonsoir.
Pour XP, il me semble bien que le sujet a déjà été abordé. Une bonne recherche devrait vous donner la solution.

A partir de Windows Vista, vous pouvez utiliser le planificateur de tâches en utilisant comme déclencheur "Si un événement spécifique est enregistré".
Là il vous faudra choisir le bon Journal d'événement et l'événement lié à l’arrêt du système ...

Pour finir, en théorie (j'ai pas essayé) avec la simple ligne de commande "Shutdown.exe /a" le système ne devrait pas continuer son arrêt. Mais là c'est théorique. :mrgreen:

D'après un test que je viens de faire, pour un redémarrage du PC, c'est le journal "Système", source "USER32" et ID événement "1074".

On peux aussi récupérer toujours dans le journal "Système", la source "WinLogon", et l'ID "7002" (Fermeture session).
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#12

Message par jguinch »

J'espère que c'est pas trop tard :oops:
J'ai pas de XP sous la main, mais ça devrait fonctionner avec ça :
► Afficher le texte
Pour le lancement automatique, tourne-toi vers les fonctionnalités Autorun(même si c'est plus très à la mode et bien souvent verrouillé)
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#13

Message par TheFireman57 »

Merci vous me sauver la vie et j'ai créer un conteneur car l' autorun.inf est verrouiller. :D je vous tiens au courant de ma note :P
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#14

Message par TheFireman57 »

Et ben merci ! :)

Je tiens tout d'abord a remercier mon prof de CIT pour m'avoir fait passer que des bons moments sur ce thème et de m'avoir mis un 18 ;)

Merci pour le code de suspension de l'arrêt du système qui fonctionne parfaitement le seul qui fonctionne d'ailleurs.

:P
Modifié en dernier par TheFireman57 le mer. 11 juin 2014 21:15, modifié 1 fois.
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2128
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#15

Message par TommyDDR »

Ça fait un peu "je vous ai utilisé, je n'en n'ai plus besoin" ^^'
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#16

Message par jguinch »

Ouais c'est un peu ça on dirait... :cry:
Bref, ça servira surement à quelqu'un d'autre (avis à ceux qui sont sous XP...) :D
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#17

Message par TheFireman57 »

Excusez moi si vous l'avais pris comme sa mais ce n'était dans mes intentions vous savez j'ai lus d'autres sujets du même type sur ce site et je n'ai pas trouver mon bonheur mais grâce à mon poste oui , donc je tenais juste a vous remercier. :cry:
Modifié en dernier par TheFireman57 le mer. 11 juin 2014 21:18, modifié 1 fois.
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Suspendre l'arrêt du système

#18

Message par jguinch »

Pas de souci TheFireman57 :wink:
Pense à passer tu sujet en [R] si c'est OK...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
TheFireman57
Niveau 1
Niveau 1
Messages : 13
Enregistré le : dim. 08 juin 2014 10:00
Status : Hors ligne

Re: [R] Suspendre l'arrêt du système

#19

Message par TheFireman57 »

Et puis dans mes projet futur, je finirais par revenir sur cette page. ;)
Ne0ratek
http://www.fire-domain.ovh/@envoie_mail.php
Mon wallet bitcoin : 1C5rFJ34aEmujp27r7sGYtLHaZgVEue4XV
Répondre