Contrôle de la luminosité et du contraste de Windows

[Résolu]
Signaler
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007
-
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
-
Bonjour,

Je me demandais s'il était possible de contrôler la luminosité et le contraste de l'affichage de Windows comme le fait un driver de carte graphique? J'ai des problèmes aux yeux qui m'obligent à travailler avec un éclairage réduit. Malheureusement, Certain des ordinateurs sur lesquels je dois travailleront des cartes graphiques "on board" sans option et un écran qui n'offre pas le contrôle de l'éclairage. J'aimerais construire une application qui peut gérer contraste et éclairage, peut importe le matériel et si possible, peux importe la version de Windows. Existe-t-il un API ou DLL qui peut m'aider?

SVP un peut d'aide
didgy

22 réponses

Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
voila, essaie ce programme et dit moi s'il fonctionne
http://www.csharpfr.com/code.aspx?ID=33652
sur certains ordinateurs, ca peut que ca fonctionne pas a cause de la carte graphique

etlk, bonne chance

@++
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
on peut utiliser GDI
et controler le contraste avec la fonction
SetDeviceGammaRamp()

je suis en train de travailler sur un programme

@++
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
41
Salut, dans la MSDN sous le terme "Accessibility" il y'a plusieurs explications pour améliorer le confort visuel. Sinon l'API la plus simple pour gérer la luminosité, le contrast etc.. c'est DirectDraw ( bien que considéré comme obsolète ). Sinon y'a aussi la fonction Win32 ChangeDisplaySettingsEx et la structure VIDEOPARAMETERS.
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
41
Finalement je crois que la structure VIDEOPARAMETERS ne corresponds pas à ce que tu veux faire.
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
J'ai trouver un code source qui fait exactement ce que tu veux
c'est en C++


j'ai essayé de le refaire en C# mais j'ai pas réussi


quand je charge des DLL de Win32, y a beaucoup de types que je sais pas comment faire pour intergrer dans C#


surtout avec les pointeurs LPVOID

ca sera bien que qqun qui maitrise le C# puisse nous faire cette application.
En tout cas, voici le code que j'ai trouvé, on peut telecharger le projet en bas
http://www.nirsoft.net/vc/change_screen_brightness.html

@++
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
97
Pour les LPVOID tu peux utiliser des IntPtr.

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
thanks
j ai trouver un truc qui parle de ca sur le msdn
et j ai reussi a faire fonctionner la fonction (c drole de dire ca)

je posterai un code des que possible

@++
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

Merci pour votre aide!

Ça marche très bien sur un pc qui a du ATI ou NVIDIA, mais j'ai tester avec un ordi qui à un carte "on board" et le programme ne démarre pas.

Ça y est prèsque...

didgy
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
mon programme agit sur la carte graphique
feque, avec ces cartes "on board", je sais pas comment il faut s y prendre

@++
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
Quand j y pense, pour ton probleme, tu peux acheter les vitres-filtres
c genre des vitres teintées qui s'installe sur un écran et qui sont confortables pour les yeux

@++
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

C'est une idée interessante, mais je travailler sur plusieurs postes dans différents endroits, donc une solution logiciel serais l'idéal.

didgy
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
oui, t as raison
apporter sa vitre fumée avec soi partout,c est pas l ideal

@++
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

J'ai trouvé cette source en C++ MFC http://www.codeproject.com/miscctrl/gamma_manager.asp
qui fonctionne sur les 3 pc tester. Il utilise la même fonction GetDeviceGammaRamp, mais arrive à un résultat différent, beaucoup moins interressant que ton code. Y'a peut être quelque chose à faire avec ça.

didgy
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
Bon sens, c horrible les MFC
j ai modifié un peu son programme
le gars qui a fait ca est vraiment génial

donne moi ton adresse, et je pourrais te l'envoyer
y a des petits probs encore mais ca devrait bien marcher, c que j'ai genre fait du MFC pedant une semaine, pis j'ai arreter

@++
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

On a le même genre d'expérience en MFC. J'ai regarder le code un peu, mais je comprend pas trop comment l'interface bouge, j'ai l'habitude de .net. Voilà on addresse [mailto:lpgiroux@videotron.ca lpgiroux@videotron.ca]


Merci pour ton aide. L'école recommence bientôt et je ne suis pas certain de pouvoir suivre mes cours sans ça.

didgy
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

Wow, c'est génial! Ça fais exactement ce que je voulais.
Étrange petit bug... Peux-tu m'envoyer la source SVP?

Merci beaucoup pour ton aide, c'est très apprécié.
didgy
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

Est-il possible d'avoir les 2 effets en même temps dans le même prog?

didgy
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
j'ai pas compris ta derniere question
mais je vais t'envoyer le code source modifié
(hey, une chance que je l'ai conservé)

@++
Messages postés
25
Date d'inscription
jeudi 3 juin 2004
Statut
Membre
Dernière intervention
19 septembre 2007

Le prop original avait un effet qui ressemblais à du contraste et ton code fais un effect qui ressemble plus à de la luminosité. Je me demandais si on peut utiliser les 2 effets en même temp dans le même prog ou si un annule l'autre? Fait amusant: les curseurs ne sont pas affecter.

didgy
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008
1
lol, on peut utiliser les deux je pense
mais je suis pas tres fort la-dans, la technique pour la luminosité, je l'avais pris sur un site web
en jouant sur les valeurs du tableau dans mon prgramme, j'ai meme reussi a avoir un ecran bleu (bleu vert au fait ;)

et effectivement, la souris va continuer a flasher (une joke)

@++