[R] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

[R] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

#1

Message par Boulanza »

Bonjour,
Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR du script suivant:
Merci pour votre aide.
Cordialement.

Code : Tout sélectionner

 ; Désactive les entrées utilisateur de la souris et du clavier.
BlockInput(1)
Sleep(10000)
; Active les entrées utilisateur à partir de la souris et du clavier.
 BlockInput(0)
Modifié en dernier par Boulanza le mar. 20 févr. 2018 15:16, modifié 1 fois.
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

#2

Message par Boulanza »

Bonjour,
J'aurais s'il vous plait voulu avoir vos avis sur le fait que la seule solution que j'ai trouvé et qui fonctionne est la suivante :

Code : Tout sélectionner

#Include <WinAPI.au3>
$GUI = GUICreate("",@DesktopWidth,@DesktopHeight,0,0,0x80000000)
GUICtrlCreateLabel("",0,0,@DesktopWidth,@DesktopHeight)
GUISetBkColor(0)
GUISetState()
AdlibRegister("FirstPlan", 100)
_WinAPI_ShowCursor(0)
Sleep(20000)
Func FirstPlan()
WinSetOnTop($GUI, "", 1)
EndFunc
Pas de solution sans passer par GUICreate. Votre avis s'il vous plait ?
Cordialement.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

#3

Message par TommyDDR »

Vous pouvez vérifier que la souris n'a pas bougé et si tel est le cas, refaire un BlockInput.
Opt("MustDeclareVars", 1)

Global $oldPos[2]
Global $timer = TimerInit()
Global $wait = 10000

While(True)
    If(TimerDiff($timer) < $wait) Then
        forceBlockInput()
    Else
        BlockInput(0)
        Exit
    EndIf
    Sleep(10)
WEnd

Func forceBlockInput()
    Local $mPos = MouseGetPos()
    If($mPos[0] <> $oldPos[0] Or $mPos[1] <> $oldPos[1]) Then
        $oldPos = $mPos
        BlockInput(1)
    EndIf
EndFunc


Func quit()
    Exit
EndFunc
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

#4

Message par Boulanza »

Merci TommyDDR pour votre réponse qui marche parfaitement.
Je cherche à exécuter séparément deux foncions dans une application AutoIt :
1- DésactiveSourie() sans boucle et sans timer
2- AciverSourie()
forceBlockInput() ne marche que dans la condition de la présence d'une boucle.
Cordialement.
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2086
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

#5

Message par TommyDDR »

Pourquoi ne voulez vous pas de boucle ni timer ?
Pouvez vous fournir la 2eme fonction à exécuter ?
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Boulanza
Niveau 9
Niveau 9
Messages : 697
Enregistré le : mer. 31 juil. 2013 15:49
Status : Hors ligne

Re: [..] Comment empêcher la souris de se désactive avec un CTRL+ALT+SUPPR

#6

Message par Boulanza »

Bonjour,
Merci TommyDDR pour votre aimable aide. Je suis convaincue qu' une boucle est obligatoire pour empêcher la souris de se désactive avec un CTRL+ALT+SUPPR.
Cordialement.
Répondre