|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.03.2014, 18:38 | #1 |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
как оформить директиву компилятора Win XP, Win 7, Win 8
привет, подскажи пожалуйста, как оформить директиву компилятора, если Win XP то, если Win 7 то, если Win 8-8.1 то?
примерно так надо: (это пример, для, если х32 то, если х64 то) Код:
|
04.03.2014, 18:45 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
Компилятором-никак. Кодом - да, см. класс TOSVersion
|
04.03.2014, 18:58 | #3 |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
нашел какой-то модуль, подскажите пожалуйста, как оформить одной строчкой, узнать какая ОС????установлена
Код:
Последний раз редактировалось beegl; 04.03.2014 в 19:47. Причина: добавил текст |
04.03.2014, 21:36 | #4 |
Форумчанин
Регистрация: 21.01.2012
Сообщений: 240
|
Подобные директивы компилятора - они важны на стадии компиляции. Если потом программа уйдет к Васе в виде дистрибутива (готового exe или exe внутри программы установки), а то у него она будет пытаться работать по правилам, которые были ранее сформированы на компе автора программы (когда автор собирал exe-шник). Директивы хороши если исходники распространять, делая свой код работающим в разных системах, и если Вася будет компилировать у себя на компе этот код - то у него скомпилятся и соберутся в exe только те части, которые подходят для васиного компа и васиной ОС.
А проверка версии Windows в приведенному коде делает вызов windows API-функции GetVersionExA(). А потом по полученному номеру узнает тип операционной системы. Например, моя Windows 8.1 это 6.3.9600 (легко это узнать если в любой windows-программе типа блокнота, калькулятора, паинта и т.д. тыкнуть Справка-О программе). А список всех версий windows и соответствующих им номеров - например, здесь: http://ru.wikipedia.org/wiki/Windows (в разделе "Семейство Windows NT" начиная с 2000 и далее). Последний раз редактировалось blackstrip; 04.03.2014 в 21:39. |
04.03.2014, 22:24 | #5 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
Ну сказал же по TOSVersion в RTL Delphi, зачем сетевой шлак брать?
|
05.03.2014, 08:48 | #6 | |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
Цитата:
Код:
|
|
05.03.2014, 09:27 | #7 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
в SysUtils есть процедура InitPlatformId. В ней и смотри вызов GetVersionEx. Которую нет необходимости вызывать, поскольку вся необходимая инфа уже есть в глобальных переменных Win32Platform и подобных того же юнита
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
05.03.2014, 12:25 | #8 | |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
Цитата:
И вот, хотел протестить прогу, на VM VirtualBox, поставил 8-ю, настроил ЮСБ флешку, определяет, только с ошибкой, в диспетчере такая ошибка. Как исправить? Последний раз редактировалось beegl; 05.03.2014 в 12:32. Причина: добавил текст |
|
05.03.2014, 12:38 | #9 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
05.03.2014, 12:47 | #10 |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
это если XP, а для 7-й и 8-й какие цифры надо?
Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблема совместимости Win XP и Win 2000 при взаимодействии с консолью. | maleziv | Win Api | 10 | 06.08.2012 22:35 |
Как сохранить проект VB написанный на win XP , чтобы он работал на win NT | Vceznayka | Microsoft Office Excel | 1 | 08.02.2012 13:23 |
висне сет при запуску Win XP после установки Win 7 | VVkSoft | Windows | 3 | 15.09.2009 10:36 |
пути в реестре, где находятся программы автозагрузки для win'95 win'98 win' me win 2000 | Prisian | Win Api | 1 | 11.09.2007 20:07 |
ветви в реестре для автозагрузки для win'95, win'98, win' me, win 2000 | Prisian | Windows | 1 | 09.09.2007 23:15 |