Неправильное отображение Версии Windows

275
03 декабря 2017, 10:38

Всем привет. Работаю с Visual Studio 2012 и на Windows 10.

Написал программу которая выводит версию Windows System.Environment.OSVersion.Version. Но при запуске выдает, что я работаю на Windows 8. Порылся по гуглу и понял, что нужно добавить в манифест строчку кода <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>, добавил, результат тот же, мне отображает, что я работаю с Windows 8.

Собрал все в msi файл и попробовал запустить на другом компьютере с Windows 10 где нет Visual Studio, а вдруг, но эффект был тот же, Windows 8.

Что я делаю не так? Спасибо

Answer 1

Прописывание секции compatibility — правильный путь. Согласно документации, Environment.OSVersion возвращает версию согласно WinAPI-функции GetVersionEx. Эта функция, в свою очередь, возвращает версию 8.0, если не установлен нужный манифест:

Applications not manifested for Windows 8.1 or Windows 10 will return the Windows 8 OS version value (6.2). Once an application is manifested for a given operating system version, GetVersionEx will always return the version that the application is manifested for in future releases.

Это значит, что вы сделали всё правильно, и где-то у Visual Studio осталась закешированной старая версия исполняемого файла или манифеста. Выглядит как мелкий баг Visual Studio.

Перестройте программу по новой, перезапустите Visual Studio, проблема должна исчезнуть.

READ ALSO
Реализовать placeholder в UserControl

Реализовать placeholder в UserControl

Доброго времени суток, всемЯ так понимаю, в WPF нет контрола, который будет похож на TextBox и иметь свойство placeholder'а

297
Установка selectItem после удаления элемента

Установка selectItem после удаления элемента

Имеется простой listBox, с него пользователь может удалить выбранные элементы, те

257
Изменения стиля внутренних контролов у UserControl&#39;а

Изменения стиля внутренних контролов у UserControl'а

Подскажите пожалуйста, как правильно делают такие вещиУ меня есть UserControl - SearchBox, который собран из TextBox и Button

258
C# функции, подпрограммы [требует правки]

C# функции, подпрограммы [требует правки]

Даны 4 целых числа:a,b,c,dДля каждой из всех комбинаций по 3 числа, ИСПОЛЬЗУЯ ФУНКЦИЮ, найти количество отрицательных среди них

265