Если вы не используете C #, вам нужно сделать два шага, чтобы заставить это работать в Windows 7.
Сначала, сделайте ваше приложение поддерживающим DPI. Этот блог объясняет, как это сделать.Он включает в себя либо изменение манифеста приложения, либо вызов функции SetProcessDPIAware () (которая может существовать или не существовать).
Затем получите значения DPI X / Y с помощью GetDeviceCaps(hdc, LOGPIXELSX)
иGetDeviceCaps(hdc, LOGPIXELSY)
, соответственно, как объяснено в этой статье MSDN .
У меня есть приложение, которое ранее не поддерживало DPI, но все еще не работало при использовании с масштабированием текста (как доступно вПанель управления Windows 7 «Дисплей»), и это заставило ее работать, не оказывая влияния на Windows 8 или новее.