B
Problem gelöst!
void AdjustStandardWindowRect(HWND hWindow, RECT& WindowSizeRect)
{
//Außen- und Innenrahmen
RECT WindowRect, ClientRect;
//Erstmal klein zum testen
MoveWindow(hWindow, 0, 0, 400, 300, FALSE);
//Maße holen
GetWindowRect(hWindow, &WindowRect);
GetClientRect(hWindow, &ClientRect);
//Größe anpassen
WindowSizeRect.right += WindowRect.right - ClientRect.right;
WindowSizeRect.bottom+= WindowRect.bottom - ClientRect.bottom;
//Positin an Größe anpassen
WindowSizeRect.left = GetSystemMetrics(SM_CXSCREEN)/2 - WindowSizeRect.right /2;
WindowSizeRect.top = GetSystemMetrics(SM_CYSCREEN)/2 - WindowSizeRect.bottom/2;
//Fenster neue Größe geben
MoveWindow(hWindow, WindowSizeRect.left, WindowSizeRect.top,
WindowSizeRect.right, WindowSizeRect.bottom, FALSE);
}
Also dieses Testprogramm war nur mal schnell aus nem anderen Programm kopiert, deshalb auch die schlechte Fehler-Behandlung.
Darüber haben sich schon viele beschwert. Über Stil lässt sich streiten.
Im Original sieht das aber besser aus, Kommentare, Exceptions, Log, etc.
UI? Konsole, musste eben schnell gehen.
Zum Thema Basics über Windows Programmierung: habe Petzold gelesen