1 votes

Win10 : La manette de jeu empêche l'économiseur d'écran

Ma manette de jeu empêche le démarrage de l'écran de veille. Comment puis-je résoudre ce problème ?

J'avais l'habitude de résoudre ce problème via le gestionnaire de périphériques, mais maintenant, lorsque je clique sur le périphérique dans le gestionnaire de périphériques, l'onglet de gestion de l'alimentation est absent.

Une question connexe : pour trouver que le contrôleur était le coupable, j'ai fait des tests manuels. Existe-t-il un meilleur moyen de le découvrir ? Je note que powercfg -requests ne renvoie rien.


Plus d'informations :

  • Le contrôleur est un PS5 Dualsense, et il est détecté comme un contrôleur xbox 360.
  • Il n'y a pas non plus d'onglet de gestion de l'alimentation pour la souris et le clavier.

0voto

user104047 Points 1

Mon hack actuel jusqu'à ce que ce bug soit corrigé :

# Toggle (disable/enable device) a game controller that prevents the screen saver from running; based on devcon.exe (from Windows Driver Kit)
# https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/devcon-examples

import colorama, time, subprocess

devcon = r'"C:\Program Files (x86)\Windows Kits\10\Tools\x64\devcon.exe"'

def print_red( st ):
    print(colorama.Fore.RED + colorama.Style.BRIGHT + st + colorama.Style.RESET_ALL)

def print_green( st ):
    print(colorama.Fore.GREEN + colorama.Style.BRIGHT + st + colorama.Style.RESET_ALL)

def main():
    # query
    cmd = "%s status *game controller" % devcon
    out = subprocess.check_output(cmd).decode("utf-8")
    print( out )

    if out.find( "1 matching device(s) found." ) != -1:
        print( 'Found' )
    else:
        print_red( 'Not found!' )
        input()
        return

    if out.find( "Driver is running." ) != -1:
        print_red( 'Disabling' )
        cmd = "%s disable *game controller" % devcon
        out = subprocess.check_output(cmd).decode("utf-8")
        print( out )
    else:
        print_green( 'Enabling' )
        cmd = "%s enable *game controller" % devcon
        out = subprocess.check_output(cmd).decode("utf-8")
        print( out )

    time.sleep(1)

if __name__ == "__main__":
    main()

EDIT

Bizarre, après avoir fait une fois la désactivation/activation, l'économiseur d'écran fonctionne bien. Peut-être que la désactivation fait quelque chose à la gestion de l'énergie que l'activation ne rétablit pas. Donc, un simple fichier batch (.bat) pour désactiver/activer le pilote au démarrage peut être suffisant.

"C:\Program Files (x86)\Windows Kits\10\Tools\x64\devcon.exe" disable *game controller
"C:\Program Files (x86)\Windows Kits\10\Tools\x64\devcon.exe" enable *game controller

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X