[R] Empecher la mise en veille
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.
[R] Empecher la mise en veille
Bonjour,
Je cherche à empecher la mise en veille sur mon poste de travail, soumis à des GPO qui empechent l'acces à la gestion de la mise en veille (win 10).
J'ai les droits admin local, j'ai de suite pensé à powercfg avec qq parametres pour desactiver le mise en veille, mais pas les droits.
Je pense donc à une boucle qui send un touche clavier ou click souris, mais lequel ou laquelle sans que ce ne gene mona ctivité sur le bureau.
Avez vous d'autres idées ?
Merci.
Cdlt.
Dimvar.
Je cherche à empecher la mise en veille sur mon poste de travail, soumis à des GPO qui empechent l'acces à la gestion de la mise en veille (win 10).
J'ai les droits admin local, j'ai de suite pensé à powercfg avec qq parametres pour desactiver le mise en veille, mais pas les droits.
Je pense donc à une boucle qui send un touche clavier ou click souris, mais lequel ou laquelle sans que ce ne gene mona ctivité sur le bureau.
Avez vous d'autres idées ?
Merci.
Cdlt.
Dimvar.
Modifié en dernier par DimVar le jeu. 04 juil. 2019 15:32, modifié 1 fois.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
- TommyDDR
- Modérateur
- Messages : 2087
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: [..] Empecher la mise en veille
Savez-vous au bout de combien de temps la mise en veille se lance ?
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] Empecher la mise en veille
_WinAPI_SetThreadExecutionState devrait marcher
" 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: [..] Empecher la mise en veille
@Tommy : Oui, 15mn.
@mickell : merci, je vais regarder.
J'ai pour l'instant pondu ca, en cours de test.
@mickell : merci, je vais regarder.
J'ai pour l'instant pondu ca, en cours de test.
Global $timeset, $time
$timeset = TimerInit ()
While 1
_Timer()
Wend
Func _Timer()
Local $posMouse =""
$time = TimerDiff ($timeset)
If $time < 840000 Then
$timeset = TimerInit () ;si le temps ecoulé est sup à 14mn, alors on fait un deplacement de souris et re-init du temps
$posMouse = MouseGetPos ()
MouseMove ($posMouse[0] +1, $posMouse[1] +1)
EndIf
EndFunc
$timeset = TimerInit ()
While 1
_Timer()
Wend
Func _Timer()
Local $posMouse =""
$time = TimerDiff ($timeset)
If $time < 840000 Then
$timeset = TimerInit () ;si le temps ecoulé est sup à 14mn, alors on fait un deplacement de souris et re-init du temps
$posMouse = MouseGetPos ()
MouseMove ($posMouse[0] +1, $posMouse[1] +1)
EndIf
EndFunc
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Re: [..] Empecher la mise en veille
Arf !
D'apres le forum Anglais, le mousemove ne fonctionne pas sur une VM (machine virtuelle).
Je dois semble t il faire appel à du _WinAPI*
Ca vous parle ?
Merci.
Ps : j ai testé un simple script qui fait un mousemove(1,1), et en effet, rien ne bouge.
D'apres le forum Anglais, le mousemove ne fonctionne pas sur une VM (machine virtuelle).
Je dois semble t il faire appel à du _WinAPI*
Ca vous parle ?
Merci.
Ps : j ai testé un simple script qui fait un mousemove(1,1), et en effet, rien ne bouge.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
- jchd
- AutoIt MVPs (MVP)
- Messages : 2273
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] Empecher la mise en veille
Sinon, envoyer un Shift-Down immédiatement suivi d'un Shift-Up (ou Ctrl- ou Alt-) tout les 10 minutes devrait/pourrait marcher, sauf erreur.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..] Empecher la mise en veille
En effet, mais je cherchais une action qui n'impactais pas le travail sur le bureau (ou sur une appli).
Si je suis sur un notepad++ et que je m'apprete à supprimer un bloc de code, et que le shift UP arrive, aie
[edit] je teste la soluce de Mikell actuellement (obligé d'attendre les 15mn definies par l'admin du domaine )
Si je suis sur un notepad++ et que je m'apprete à supprimer un bloc de code, et que le shift UP arrive, aie
[edit] je teste la soluce de Mikell actuellement (obligé d'attendre les 15mn definies par l'admin du domaine )
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] Empecher la mise en veille
" 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: [..] Empecher la mise en veille
Ben oui
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
Re: [..] Empecher la mise en veille
En effet, ca fait le taff !
Merci.
Merci.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !
- TommyDDR
- Modérateur
- Messages : 2087
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: [R] Empecher la mise en veille
Pour les solutions de shift down / up, vous pouvez le lier à :
qui permet de connaitre le nombre de millisecondes d'inactivité.
Ce qui pourrait donner une fonction qui vérifie si on a dépassé les 14 minutes d'absence :
Comme ça vous avez une fonction qui s'auto gère, vous pouvez avoir ce que vous voulez dans le while si vous voulez faire autre chose et vous pouvez même réappeler setIdleMax en changeant la valeur de temps au cours du programme.
Ce qui pourrait donner une fonction qui vérifie si on a dépassé les 14 minutes d'absence :
#include <WinAPISys.au3>
setIdleMax(15)
While(1)
Sleep(10)
WEnd
Func setIdleMax($min = Null)
Local Static $userMin = Null
Local Static $userFunc = Null
If(IsDeclared('min')) Then
$userMin = $min
EndIf
Local $msIdle = _WinAPI_GetIdleTime()
Local $msec = $userMin * 60000
Local $time = $msec - $msIdle - 100
If($time <= 0) Then
ConsoleWrite("shift !" & @CRLF)
Send("{LSHIFT DOWN}")
Send("{LSHIFT UP}")
EndIf
AdlibRegister(setIdleMax, $time)
EndFunc
setIdleMax(15)
While(1)
Sleep(10)
WEnd
Func setIdleMax($min = Null)
Local Static $userMin = Null
Local Static $userFunc = Null
If(IsDeclared('min')) Then
$userMin = $min
EndIf
Local $msIdle = _WinAPI_GetIdleTime()
Local $msec = $userMin * 60000
Local $time = $msec - $msIdle - 100
If($time <= 0) Then
ConsoleWrite("shift !" & @CRLF)
Send("{LSHIFT DOWN}")
Send("{LSHIFT UP}")
EndIf
AdlibRegister(setIdleMax, $time)
EndFunc
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
- jchd
- AutoIt MVPs (MVP)
- Messages : 2273
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] Empecher la mise en veille
Tout à fait. Si la machine est idle depuis 14 minutes, la probabilité que lorsqu'on fait un shift down-up interfère avec une action "en cours" (alors qu'il ne se passe rien depuis un bail) est AMHA extrêmement faible.Pour les solutions de shift down / up, vous pouvez le lier à _WinAPI_GetIdleTime() qui permet de connaitre le nombre de millisecondes d'inactivité.
Ceci dit, s'il y a une primitive toute ficelée qui fait le boulot, autant l'utiliser.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [R] Empecher la mise en veille
@Tommy : Merci pour ce complément.
N'évoquons pas la pierre, les jeunes risqueraient d'en poire !