У меня большинство приложений сделано в виде "диалоговых" — после запуска первым делом вызывается DialogBox() создающий диалог из ресурсного шаблона, и весь гуй реализуется в диалоге (иногда туда же подгружается оконное меню). В диалогах используются только стандартные элементы (Edit/ListBox/ComboBox и т.п.), никаких битмапов или custom controls. Никакой поддержки изменения DPI нет, манифесты не используются.
Когда активно стали продвигать поддержку изменений DPI, я поставил в семерке масштабы 125-150-200%, запустил пару приложений, убедился, что винда отлично масштабирует такие диалоги сама, окна не выглядят "мыльными", успокоился и забыл про это.
Сейчас интереса ради запустил под парой десяток (1709 и 1803), увеличил масштаб — все диалоги масштабируются растрово, изображение нечеткое. Проверил под семеркой — там, как и раньше, все прекрасно.
Добавил манифест с dpiAwareness=PerMonitorV2 — помогло, но только для основных диалогов. Окна, отображаемые при вызове MessageBox, опять растягиваются растрово в десятках до 1803. Из каких соображений они поменяли умолчание, перестав масштабировать диалоги, и как заставить нормально масштабировать MessageBox в предыдущих версиях десятки?
Ну и даже при "умном" растягивании диалога нередко разъезжаются элементы управления, пропадают слова из надписей. Это можно как-то предсказать заранее, или только подбирать положения/размеры элементов экспериментально?