Plain Win32 needs a renaissance. I worked with it and felt like a wizard. Message boxes, dialogue boxes, wizards, hammered out in pure C++. Combined with the Windows Implementation Library[1] I was writing fast, modern code.
Only AI stuff, there is hardly anything else that depends on WinUI/WinAppSDK.
There are Win32 APIs for HiDPI configuration, the issue is that it isn't automatic, it needs to be on the app manifest or called explicitly, and handle the events for resolution changes.
Even if you do that, and carefully work in "points" internally rather than pixels, the results seem to be bad. Win32 dialogs are generally not resizable or "responsive". This is even visible in settings dialogs from Windows itself.
> plain Win32
Plain Win32 needs a renaissance. I worked with it and felt like a wizard. Message boxes, dialogue boxes, wizards, hammered out in pure C++. Combined with the Windows Implementation Library[1] I was writing fast, modern code.
[1]: https://github.com/microsoft/wil
As side note, WIL was originally introduced for writing drivers in C++ in kernel mode, then expanded to support other workloads on userspace.
Here is the original announcement,
https://community.osr.com/t/the-new-wil-library-for-c-code-i...
Annoyingly many of the new features are WinRT only, so you have to deal with that horror.
I'm a big fan of the MFC/WinForms era stuff myself, but it has one crippling limitation: it doesn't handle display scaling very well at all.
Only AI stuff, there is hardly anything else that depends on WinUI/WinAppSDK.
There are Win32 APIs for HiDPI configuration, the issue is that it isn't automatic, it needs to be on the app manifest or called explicitly, and handle the events for resolution changes.
Even if you do that, and carefully work in "points" internally rather than pixels, the results seem to be bad. Win32 dialogs are generally not resizable or "responsive". This is even visible in settings dialogs from Windows itself.
1 reply →
I have been using WinRT and Win32, and I find WinRT much more pleasant to use
Until you will bump into one of those bugs that have been open since Project Reunion was announced.