Системное и веб-программирование, компьютеры, игры
С Новым 2018 годом! |
Сайт www.gcmsite.ru принадлежит одному человеку. Информационная составляющая сайта: помощь начинающим программистам и продвинутым пользователям компьютера в решении тех или иных проблем. На сайте представлена следующая информация:
Разделы сайта:
Программы, PHP-скрипты
Набор программ для работы в локальной сети и интернете, мониторинга компьютера, его составляющих, поиска вирусов, изменения различных настроек Windows. Программы для создания виртуальных открыток. Все программы написаны на Pascal в среде Delphi 5. Набор программ для web-разработчиков по составлению META-тегов, проверка доступности партнерских ссылок и т.д. Базовые простые PHP-скрипты, форум и чат без MySQL, поиск по сайту за 5 минут.
Множество статей на различные тематики it и программирования: Веб-дизайн, поисковая оптимизация, программы и сервисы в Internet, программирование на php, программирование (на Delphi и не только), игровые статьи, технические устройства, популярная информация из мира High Tech: (cpu, gpu, memory, motherboard, any)
Статьи о программировании на Delphi, Prolog, PHP, Pascal. Подробное рассмотрение частных случаев программирования. Статьи о web-дизайне, оптимизации страниц, безопасности разрабатываемых программ, безопасности работы в локальных и глобальных сетях, о вирусах и методах их устранения. Статьи об игростроении, алгоритмах и методах разработки программного обеспечения.
Услуги, разработка программ, web-сервисов, поисковая оптимизация сайтов и продвижение
Разработка программного обеспечения для windows (простые и сложные программы, пользовательские и системные утилиты, акцент на индивидуальное техническое задание). Разработка php-скриптов (сервер Apache). Поисковая оптимизация сайта и продвижение в поисковых системах (SEO) и оптимизация php-скриптов. Анализ семантики сайта и предложение направления развития. Программное обеспечение, индивидуально заточенное для Вашей задачи.
Apache — это кросплатформаенное программное обеспечение, относящееся к классу http-серверов. Поддерживается множеством операционных систем: Windows, Linux, MacOS и т.д. Одним из ключевых факторов в вопросе использования данного web-сервера является гибкость настройки и надежность выполнения операций. Apache включает в себя множество дополнительных модулей, позволяющих работать с различными базами данных, контролировать аутентификацию пользователей и т.д.
Как версию windows delphi
Как программно узнать версию Windows, из-под которой запускается программа?
Предполагаю, что надо писать
<$IFDEF>
а что должно быть тут?
Я просто не знаю обозначения всех осей. 95-й, NT, 98-й и. т. д
Выручайте!
← →
MBo ( 2003-01-13 08:35 ) [1]
GetVersionEx
а <$IFDEF>— только при компиляции влияет
← →
Сергей Бушин ( 2003-01-13 08:51 ) [2]
Для того чтобы программно узнать версию Windows под которой запускается Ваше приложение есть несколько способов.
1. Win API — GetVersion, GetVersionEx
2. В Delphi есть переменная Win32Platform. Нажмите F1 и узнаете.
Есть наверно и еще, не знаю, но все это можно найти простым нажатием F1.
А то что предлагает Вы, то это называется директивы условной компиляции. Например начиная с Delphi 6 имеются такая директива как MSWINDOWS, а в Kylux есть LINUX, если Вы в своем коде напишите:
<$IFDEF MSWINDOWS>
MyWinodwsProc;
<Данный участок будет компилироваться только в Windows, т.к. в Delphi определен MSWINDOWS, а в Kylux это компилятор воспринимать не будет, т.к. ему не известно MSWINDOWS>
<$ENDIF>
.
<$IFDEF LINUX>
MyLinusProc;//тоже самое только наоборот
<$ENDIF>
Имеется способ определить под какой версией Delphi происходит компиляция при помощи директив условной компиляции, но узнать версию Windows при помощи директив условной компиляции Вы не сможете.
Извините, но иногда надо читать книги. Данный момент, очень хорошо описан в любой начинающей книге.
← →
Бук ( 2003-01-13 08:55 ) [3]
← →
Delirium^.Tremens ( 2003-01-13 09:20 ) [4]
Сказали же уже, что это только при компиляции, вот пример узнавания в run-time:
var osInfo: OSVERSIONINFO;
.
osInfo.dwOSVersionInfoSize := sizeof(OSVERSIONINFO);
GetVersionEx(osInfo);
if osInfo.dwPlatformId = VER_PLATFORM_WIN32_NT
then sysName := «Windows NT «+ IntToStr(osInfo.dwMajorVersion)
else if osInfo.dwPlatformId = VER_PLATFORM_WIN32_WINDOWS
then sysName := «Windows «+ IntToStr(osInfo.dwMajorVersion);
Не нужно писать свой код. Есть уже готовая информация: Win32Platform, Win32MajorVersion, Win32MinorVersion, Win32BuildNumber. Остается только проверить.
← →
GrayWolf ( 2003-01-13 21:05 ) [6]
Я бы добавил еще такую информацию (но идея Ю. Зотова верна!):
function GetOperatingSystem : integer;
var
osVerInfo : TOSVersionInfo;
majorVer, minorVer : Integer;
begin
Как получить версию Windows?
Delphi , ОС и Железо , Windows
Как получить версию Windows?
function GetOSVersion : TOSVersion;
var osVerInfo : TOSVersionInfo;
majorVer, minorVer : Integer;
begin
result := OsUnknown;
osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);
if GetVersionEx(osVerInfo) then
begin
majorVer := osVerInfo.dwMajorVersion;
minorVer := osVerInfo.dwMinorVersion;
case osVerInfo.dwPlatformId of
VER_PLATFORM_WIN32_NT :
Case majorVer of
4:result := OsWinNT;
5:if minorVer=0 then result := OsWin2000
else
if minorVer=1 then result := OsXP else result := osUnknownNT;
else result := osUnknownNT;
end;
VER_PLATFORM_WIN32_WINDOWS :
case majorVer of
4: Case minorVer of
0:result := OsWin95;
10: if osVerInfo.szCSDVersion[1] = ‘A’ then result := OsWin98SE else result := OsWin98;
90: result := OsWinME;
else result := osUnknown9x;
end;
else result := osUnknown9x;
end
else result := OsUnknown;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
case GetOSVersion of
osUnknown: Showmessage(‘Unknown’);
osWin95: Showmessage(‘Win95’);
osWin98: Showmessage(‘Win98’);
osWin98SE: Showmessage(‘Win98SE’);
osWinME: Showmessage(‘WinME’);
osWinNT: Showmessage(‘WinNT’);
osWin2000: Showmessage(‘Win2000’);
osXP: Showmessage(‘XP’);
end;
end;
var WinV: Word;
begin
WinV := GetVersion AND $0000FFFF;
Edit6.Text := IntToStr(Lo(WinV))+’.’+IntToStr(Hi(WinV));
end;
Функция выдает следующее — 4.10
Как можно таким же простым способом получить полную версию — 4.10.222
Автор ответа: inko
Вот еще один пример. Мне он нравиться больше всего. Я его обычно использую в своих программах. Он гибкий и предоставляет максимум информации.
function GetWindowsVersion1: string;
function WhatWindowsIsInstalled : String;
const
VER_NT_WORKSTATION = 0;
VER_NT_DOMAIN_CONTROLLER = 1;
VER_NT_SERVER = 2;
VER_SUITE_SMALLBUSINESS = 1;
VER_SUITE_ENTERPRISE = 2;
VER_SUITE_BACKOFFICE = 4;
VER_SUITE_COMMUNICATIONS = 8;
VER_SUITE_TERMINAL = $10;
VER_SUITE_SMALLBUSINESS_RESTRICTED = $20;
VER_SUITE_EMBEDDEDNT = $40;
VER_SUITE_DATACENTER = $80;
VER_SUITE_SINGLEUSERTS = $100;
VER_SUITE_PERSONAL = $200;
VER_SUITE_BLADE = $400;
type
TOsVersionInfoExA = packed record
old : TOsVersionInfoA;
wServicePackMajor : Word;
wServicePackMinor : Word;
<
wSuiteMask
Набор битовых флагов, определяющих компоненты Windows
VER_SUITE_BACKOFFICE Установлен компонент Microsoft BackOffice.
VER_SUITE_BLADE Установлен компонент Windows .NET Web Server.
VER_SUITE_DATACENTER Установлена Windows 2000 или компонент Windows .NET
Datacenter Server
VER_SUITE_ENTERPRISE Установлена Windows 2000 Advanced Server или компонент
Windows .NET Enterprise Server.
VER_SUITE_PERSONAL Установлена Windows XP Home Edition.
VER_SUITE_SMALLBUSINESS Установлен Microsoft Small Business Server.
VER_SUITE_SMALLBUSINESS_RESTRICTED Установлен Microsoft Small Business
Server с ограничительной лицензией для клиентов
VER_SUITE_TERMINAL Установлен компонент Terminal Services.
>
wSuiteMask : Word;
Windows 2000 Professional,
Windows XP Home Edition, или
Windows XP Professional.
VER_NT_DOMAIN_CONTROLLER Операционная система является контроллером домена.
VER_NT_SERVER Операционная система является сервером.
>
wProductType : Byte;
wReserved : Byte;
end;
<Реализация>
function WhatWindowsIsInstalled : String;
var VerInfo : TOsVersionInfoExA;
begin
FillChar(VerInfo, sizeof(VerInfo), 0);
VerInfo.old.dwOSVersionInfoSize := Sizeof(TOsVersionInfoExA);
if NOT GetVersionExA(VerInfo.old) then
begin
VerInfo.old.dwOSVersionInfoSize := Sizeof(TOsVersionInfoA);
GetVersionExA(VerInfo.old);
end;
case VerInfo.old.dwPlatformId of
VER_PLATFORM_WIN32_WINDOWS:
if (Verinfo.old.dwMajorVersion = 4) AND
(Verinfo.old.dwBuildNumber = 950) then Result := ‘Windows 95’ else
if (Verinfo.old.dwMajorVersion = 4) AND
(Verinfo.old.dwMinorVersion = 10) AND
(Verinfo.old.dwBuildNumber = 1998) then Result := ‘Windows 98’ else
if (Verinfo.old.dwMinorVersion = 90) then Result := ‘Windows Me’;
VER_PLATFORM_WIN32_NT:
if Verinfo.old.dwMajorVersion = 3 then Result := ‘Windows NT 3.51’ else
if Verinfo.old.dwMajorVersion = 4 then Result := ‘Windows NT 4.0’ else
if Verinfo.old.dwMajorVersion = 5 then
if Verinfo.old.dwMinorVersion = 0 then Result := ‘Windows 2000’ else
if Verinfo.old.dwMinorVersion = 1 then Result := ‘Windows XP’;
VER_PLATFORM_WIN32s: Result := ‘Win32s’;
end;
end;
function GetWindowsVersion1: string;
<$IFDEF WIN32>
const sWindowsVersion = ‘%.3d’;
var
Ver: TOsVersionInfo;
Platform: string[4];
begin
Ver.dwOSVersionInfoSize := SizeOf(Ver);
GetVersionEx(Ver);
with Ver do begin
case dwPlatformId of
VER_PLATFORM_WIN32s: Platform := ’32s’;
VER_PLATFORM_WIN32_WINDOWS:
begin
dwBuildNumber := dwBuildNumber and $0000FFFF;
if (dwMajorVersion > 4) or ((dwMajorVersion = 4) and (dwMinorVersion >= 10)) then Platform := ’98’
else Platform := ’95’;
end;
VER_PLATFORM_WIN32_NT: Platform := ‘NT’;
end;
Result := Trim(Format(sWindowsVersion, [dwBuildNumber]));
end;
end;
<$ELSE>
const
sWindowsVersion = ‘Windows%s %d.%d’;
sNT: array[Boolean] of string[3] = (», ‘ NT’);
var
Ver: Longint;
begin
Ver := GetVersion;
Result := Format(sWindowsVersion, [sNT[not Boolean(HiByte(LoWord(Ver)))],
LoByte(LoWord(Ver)), HiByte(LoWord(Ver))]);
end;
Статья Как получить версию Windows? раздела ОС и Железо Windows может быть полезна для разработчиков на Delphi и FreePascal.
Комментарии и вопросы
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
Проверка на версию windows
Всем привет. Требуется определить версию ОС ниже win vista. Если ниже то False, если выше висты (7, 8, 8.1, 10) то True.
Версию определяю так: CheckWin32Version(), только вот как это совместить?
Добавлено через 11 минут
Сделал так:
Проверка на новую версию..
Помогите реализовать автоматическую проверку на обновление программы через интернет. Чтобы при.
Установил Windows Vista SP2 бета версию, теперь не могу перейти на Windows XP
Всем Здравствуйте. Помогите может кто сталкивался с такой бедой, короче установил висту sp2 бета.
Как обновить версию Windows 10 Home до Windows 10 Pro?
Есть лицензионная Windows 10 Home. Хочу обновить ее до Pro версии. На сайте предлагают только.
определить версию windows
гомпода програмисты возможно как то програмно определить версию windows,что бы потом это.
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.
Получить версию windows
как получить версию windows без админ прав ?
Понизить версию windows
Доброго времени суток. Установлена Windows 7 Enterprise, хочу понизить версию до professional.
Обновить рабочую лицензионную версию Windows Vista обновить до Windows 7 бесплатно?
Доброго времени суток! Искала-искала, но так четких ответов и не нашла( Подскажите, пож., могу.
Какую версию Windows скачать?
Привет всем. Я решил поставить себе Windwos 7, какую из версий посоветуйте??
Определить версию Windows с условием
Необходимо определить издание Windows (XP, 7, 8, 8.1) и выполнить следуещее условие: Если издание.
Обновить домашнюю версию до Windows 10
подскажите у меня стоит 7 максимальная а ключ есть от домашней хотелось бы его поменять чтобы.