Bonjour,

J'essaye actuellement de réaliser un programme similaire au programme windows "magnify.exe" qui permet d'inverser les couleurs de l'écran lorsque l'on appuie sur une touche (je voudrais que ce soit la touche shift).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <Windows.h>
#include <TlHelp32.h>
     int main() {
	    HDC hdc = GetDC(HWND_DESKTOP); 
	    int w, h; 
	    w = GetSystemMetrics(SM_CXSCREEN); //La largeur de l’écran du moniteur, en pixels
	    h = GetSystemMetrics(SM_CXSCREEN);
	 if (!GetAsyncKeyState(VK_SHIFT))
    {
    	BitBlt(hdc, 0, 0, w, h, hdc, NULL, NULL, NOTSRCCOPY);
    }
    else {
    	BitBlt(hdc, 0, 0, w, h, hdc, NULL, NULL, NOTSRCCOPY);
	}
}
A l'exécution, le programme inverse bien la couleur de l'écran mais sans que j'ai besoin d'appuyer sur la touche Shift. Je ne vois pas ou est le problème :/
Merci de votre aide !