Моя цель - обнаружить Windows 10 в моем коде, который должен работать как в кросс-платформенной, так и в разных версиях Windows (по крайней мере, 7 и выше). Windows предоставляет IsWindows10OrGreater()
для решения этой проблемы, но есть и другая проблема с ней, эта функция отсутствует в предыдущих версиях Windows.
Вы найдете бесчисленные блоги и SO-вопросы, касающиеся этого, а также манифестное безумие, где такие функции, как this и getversion, и другие возвращают некоторую другую версию, а не правильную.
Например, на моей машине - метод IsWindows10OrGreater()
не компилируется (я должен был установить Win10 SDK), а IsWindowsVersionOrGreater()
сообщает 6
в качестве основной версии.
Итак, есть ли разумный способ с несколькими версиями, я мог бы решить эту проблему?