Forum de la communauté SFML

Aide => Fenêtrage => Discussion démarrée par: shingo le Mai 02, 2013, 03:11:10 pm

Titre: Désactiver l'écran de veille
Posté par: shingo le Mai 02, 2013, 03:11:10 pm
Salut, je cherche une façon de désactiver l'écran de veille car lorsque je test pendant un certain temps mon jeu, l'écran de veille se lance. Naturellement, le problème survient uniquement lorsque je joue avec la manette. J'ai un peu cherché sur Google et le forum ainsi que le la documentation mais je n'ai rien trouvé...

Merci
Titre: Re : Désactiver l'écran de veille
Posté par: Laurent le Mai 02, 2013, 03:18:46 pm
Il n'y a aucun moyen de faire ça avec SFML.
Titre: Re : Désactiver l'écran de veille
Posté par: shingo le Mai 02, 2013, 04:29:53 pm
Ah, il va falloir que je cherche une façon de le faire en C++ en espérant qu'il existe quelque chose de pas trop complexe, merci pour l'info.
Titre: Re : Désactiver l'écran de veille
Posté par: Laurent le Mai 02, 2013, 04:41:30 pm
Si c'est possible, ce sera dans tous les cas avec une fonction spécifique à ton OS, donc non portable.
Titre: Re : Désactiver l'écran de veille
Posté par: shingo le Mai 02, 2013, 05:02:34 pm
J'ai trouvé pour Windows, ouf c'est relativement simple :

#if defined _WIN32 || _WIN64
SystemParametersInfo(SPI_SETSCREENSAVEACTIVE,FALSE,0, SPIF_SENDWININICHANGE);
#endif

Me reste plus qu'à trouver pour Linux.

Cela ne me pose pas de problème que se soit pas portable étant donné que j'ai écris certaine partie du code pour Windows et Linux. D'ailleurs c'est un plaisir de compiler sans la moindre erreur sous Windows puis sous Linux.
Titre: Re : Désactiver l'écran de veille
Posté par: Laurent le Mai 02, 2013, 06:06:36 pm
Ca, si je ne m'abuse, ça va changer les paramètres globaux de Windows. La façon "propre" de faire c'est de retourner 0 sur les messages WM_SYSCOMMAND de type SCREENSAVER et POWER (truc dans le genre) -- oui, je suis curieux donc je me suis renseigné aussi :P

Mais bon, ce n'est pas faisable facilement avec SFML.
Titre: Re : Désactiver l'écran de veille
Posté par: shingo le Mai 02, 2013, 06:11:43 pm
Oui, j'ai vu que cela touchait les paramètres globaux de Windows mais étrangement, cela n'a pas affecté mon Windows 7. J'ai essayé l'app plusieurs fois, et j'ai regardé si mon écran de veille était désactivé et s'il se lançait bien comme prévu, et il fonctionne correctement. Naturellement, l'écran de veille ne se lance pas pendant que je joue. Il faudrait que je test sur des machines sous XP pour voir le comportement...

Sinon, effectivement, je vais préférer la solution "propre".