Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
5 / 5 / 0
Регистрация: 15.04.2013
Сообщений: 118

Используя функцию GetVersionEx определить тип операционной системы

03.10.2015, 21:06. Показов 3197. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание звучит так: используя функцию GetVersionEx определить тип операционной системы.
На форуме уже был такой вопрос и оттуда я вытянул такой код:

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Public Class Form1
    Private Declare Function GetVersionEx Lib "kernel32.dll" Alias "GetVersionExA" (ByRef lpVersionInformation As OSVERSIONINFO) As Long
 
Structure OSVERSIONINFO
        Public dwOSVersionInfoSize As Int32
        Public dwMajorVersion As Int32
        Public dwMinorVersion As Int32
        Public dwBuildNumber As Int32
        Public dwPlatformId As Int32
        <VBFixedString(128), Runtime.InteropServices.MarshalAs(Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst:=128)> _
        Public szCSDVersion As String
End Structure
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim OSV As OSVERSIONINFO
        OSV.dwOSVersionInfoSize = Len(OSV) 'Runtime.InteropServices.Marshal.SizeOf( OSV) ' ( ref typeof(OSVERSIONINFO)  
        GetVersionEx(OSV)
        'Dim s As String = OSV.dwMajorVersion
        TextBox2.Text = OSV.szCSDVersion.ToString
    End Sub
End Class

Вроде как она работает, ты выводит номер сервис пака. В моем понимании, задача подразумевает вывести, например, Windows 7. Реализуема ли данная задача?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.10.2015, 21:06
Ответы с готовыми решениями:

Через API GetVersionEx и GetComputerName определить номер сборки операционной системы и имя компьютера
Доброго времени суток. Как применить эти апишки GetVersionEx и GetComputerName чтобы определить номер сборки операционной системы и имя...

Тип операционной системы
помогите пожалуйста с написанием программы Разработать программу с графическим интерфейсом, используя любой язык программирования,...

Определить версию операционной системы
'определяем версию Windows 'нет информации как определить Висту и Семерку если без Option Explicit ошибка 424,а сним выделяет osInfo....

5
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
04.10.2015, 13:14
Это нужно делать вручную, сопоставляя номера версии, сборки, изменения и ревизии с известными значениями.
https://ru.wikipedia.org/wiki/... Windows_NT
0
5 / 5 / 0
Регистрация: 15.04.2013
Сообщений: 118
04.10.2015, 17:28  [ТС]
Мне нужно именно при помощи API функции GetVersionEx, таково условие задачи.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
04.10.2015, 17:58
«Windows 7» — это не номер версии операционной системы, а её название.
Во‐вторых, достаточно посмотреть в документации по структуре OsVersionInfo, что строка szCSDVersion описывает установленный сервис‐пак.
1
5 / 5 / 0
Регистрация: 15.04.2013
Сообщений: 118
04.10.2015, 20:11  [ТС]
"Тип операционной системы" - что, по-вашему, тогда требует условие данной задачи?

Добавлено через 43 минуты
А возможно ли как-то определить при помощи данной функции, установлена на компьютере Windows, Mac Os X или Linux?

Добавлено через 1 час 2 минуты
Или это определить, 32 или 64 разрядная версия стоит?
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
05.10.2015, 08:45
Цитата Сообщение от robert0801 Посмотреть сообщение
"Тип операционной системы" - что, по-вашему, тогда требует условие данной задачи?
Что угодно может означать. Например, серверная или клиентская редакция.
32-битная или 64-битная. Home, Pro или Ultimate. И т.д.

Цитата Сообщение от robert0801 Посмотреть сообщение
Или это определить, 32 или 64 разрядная версия стоит?
GetNativeSystemInfo.
У 64-битных в поле wProcessorArchitecture будет PROCESSOR_ARCHITECTURE_AMD64.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.10.2015, 08:45
Помогаю со студенческими работами здесь

Определить Service Pack операционной системы
Используя функции GetVersionEx и GetTempPath определить Service Pack операционной системы и путь к временной папке Windows

Определить service pack операционной системы
найти service pack операционной системы в VB 8 используя функцию GetVersionEx вот что получилось. но почему то не работает Public...

Определить версию операционной системы средствами boost
Добрый день. собственно вопрос обозначен в заголовке. Средствами WINAPI или POSIX я это сделать могу без особых проблем. А вот средствами...

Как определить разрядность операционной системы кодом C++?
Решил сделать автозагрузку для одной программы, которая бывает версий х32 и х64. Мне надо проверить разрядность системы, а потом запустить...

Определить размер pipe для вашей операционной системы
как определить размер pipe для вашей операционной системы?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru