Как определить разрядность Windows: 32 или 64

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Как определить разрядность Windows: 32 или 64

Сообщение Yufil »

А нельзя эту инфу прочитать через GetEnvironmentVariable, переменные PROCESSOR_ARCHITECTURE и PROCESSOR_ARCHITEW6432 ?

https://blogs.msdn.microsoft.com/david. ... s-bitness/

Detection Logic
The logic that I use from a program to detect whether the OS is 32bit or 64bit looks like this:
IF PROCESSOR_ARCHITECTURE == amd64 OR
PROCESSOR_ARCHITEW6432 == amd64 THEN
// OS is 64bit
ELSE
// OS is 32bit
END IF
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Как определить разрядность Windows: 32 или 64

Сообщение Yufil »

Проверил, работает.... Только у меня AMD64 прописными...
Developer
Ветеран
Сообщения: 551
Зарегистрирован: 26 Март 2012, 17:18

Как определить разрядность Windows: 32 или 64

Сообщение Developer »

kreator писал(а): Windows 10 Enterprise. А что такое LTSB?
Вот объяснение о версиях Windows 10:
https://social.technet.microsoft.com/Fo ... ogeneralRU
Oleg Fomin писал(а): Не забывайте добавлять к приложению соответствующий манифест, иначе Windows 10 прикидывается 8-кой и определение версии Windows будет некорректным. Источники информации указаны прямо в коде в комментах.
Так-то оно так, однако, для определения версии с помощью функции Clarion SYSTEM{PROP:WindowsVersion, 1} манифест не требуется :mrgreen:

Олег, спасибо за твой вариант определения версии Windows! :D
С Уважением, Developer
arlean1
Активист
Сообщения: 114
Зарегистрирован: 24 Июль 2016, 22:34

Как определить разрядность Windows: 32 или 64

Сообщение arlean1 »

извините за оффтопик, был длительный перерыв в работе с клашей: В какой версии появилась компиляция по 64, и есть для этой версии библиотека Олега Руденко? Помню была какая-то мутотень с установкой сервис пака с++ в какой-то версии и на этом остановился. Как сейчас - что дополнительное требуется?
Oleg Fomin
Новичок
Сообщения: 21
Зарегистрирован: 12 Апрель 2006, 11:29
Поблагодарили: 1 раз

Как определить разрядность Windows: 32 или 64

Сообщение Oleg Fomin »

Developer писал(а): Олег, спасибо за твой вариант определения версии Windows! :D
На здоровье! :D
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как определить разрядность Windows: 32 или 64

Сообщение kreator »

У меня манифест подключен. Проблема проявилась на одном устройстве, вот что странно. Определение Олега Фомина сработало как надо.
arlean1 писал(а):извините за оффтопик, был длительный перерыв в работе с клашей: В какой версии появилась компиляция по 64, и есть для этой версии библиотека Олега Руденко? Помню была какая-то мутотень с установкой сервис пака с++ в какой-то версии и на этом остановился. Как сейчас - что дополнительное требуется?
Компиляции 64bit нет пока. И, похоже, в одиннадцатой тоже не будет.
We are hard at work… for you. :)
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как определить разрядность Windows: 32 или 64

Сообщение kreator »

Разобрался в проблеме. У нас мульти-dll. Манифест в каталоге для exe лежит какой-то старый. Exe-шник перекомпилировал недавно при переходе на новый билд. Но манифест не поменялся. Удалил старый манифест, перекомпилил exe, всё стало путём. Подозреваю, при обновлении десятой Винды на других устройствах получу такие же проблемы. Либо кларионовские манифесты отличаются в зависимости от билда, но это вообще космос.
We are hard at work… for you. :)
Аватара пользователя
Губин Игорь
Шубуршун
Сообщения: 2583
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Благодарил (а): 3 раза
Поблагодарили: 26 раз

Как определить разрядность Windows: 32 или 64

Сообщение Губин Игорь »

kreator писал(а): Либо кларионовские манифесты отличаются в зависимости от билда, но это вообще космос
Я линкую манифесты в экзешники
Это я только кажусь дураком! На самом деле я полный идиот!
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Как определить разрядность Windows: 32 или 64

Сообщение kreator »

Губин Игорь писал(а):Я линкую манифесты в экзешники
У меня стоят галки "Generate Manifest" и "Link Generated Manifest in Project". При компиляции новым билдом манифест остался старым. Получается, что манифест не каждый раз генерится? Обращу на это внимание.
We are hard at work… for you. :)
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3288
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 15 раз
Поблагодарили: 49 раз
Контактная информация:

Как определить разрядность Windows: 32 или 64

Сообщение Дед Пахом »

Кстати, приоритет имеет файл манифеста под ногами у exe над прилинкованным.
С уважением, ДП
Ответить