I'm searching for a method to invert the whole windows screen colors. At the lowest possible level in the graphics chain. But (if that's possible) without using a shader inside the graphics card. Maybe by hooking into the graphic driver chain or by some neat trick with DirectX.
Purpose: Many programs use a white background by default. Changing the colors for every program is tedious if possible at all. Setting windows to "High Contrast" mode works for some applications but not for all.
So my thought is to invert the whole screen way below GDI or other graphic APIs. So that the applications AND windows itself doesn't even know that the colors on the monitor are inverted.
But I found nothing to start with. I don't even really know what to search for. I know this could be done by using something like a CUDA shader or AMP or OpenCL. But I was hoping there is a somewhat easier way. (I don't want to learn the shader language for just one little project)