I want to reduce (by 1 only pixel) the height of a window when it is show maximized.
In my window procedure I have the following code in C++:

LPMINMAXINFO minmaxinfopunt = (LPMINMAXINFO) lParam;
minmaxinfopunt->ptMaxSize.y -= 1;
return 0;

Now a strange thing happen:
- with values from 1 to 16 (that is, from "minmaxinfopunt->ptMaxSize.y -= 1;" to "minmaxinfopunt->ptMaxSize.y -= 16;") I always get the height previously memorized in ptMaxSize.y, that is, the mazimized (by the system) height of the window.

- with values equal or greater than 17 I get the height of the window reduced as aspected.

I can I solve this problem?