Я пытаюсь найти способ определить, находится ли Windows 10 в режиме планшета или нет. Обратите внимание, речь не идет о том, чтобы узнать, есть ли у пользователя планшетный компьютер или нет — это можно решить с помощью GetSystemMetrics(SM_CONVERTIBLESLATEMODE)
. В моем случае вышеприведенная функция всегда возвращает 0 - независимо от того, находится ли Win10 в режиме планшета или нет.
Этот поток без эпилога, похоже, предполагает, что нет вызова WinAPI, который мог бы обнаружить Tablet режим. Я надеюсь, что это не так, поскольку ОС отправляет разные WM-сообщения, независимо от того, находится она в режиме планшета или нет. В режиме планшета WM_SHOWWINDOW не отправляется, что означает, что мне нужно решить проблему запуска приложение по-другому, если Windows 10 находится в режиме планшета.
Я мог бы просто переместить код, который в настоящее время запускается после получения сообщения WM_SHOWWINDOW
, куда-то еще (сразу после вызова ShowWindow
), но тогда я получаю сообщение WM_DPICHANGED
с нулевыми параметрами.