Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Вниз

Ключ реестра   Найти похожие ветки 

 
Anton777 ©   (2004-08-10 13:04) [0]

Подскажите пожалуйста ключ где храниться версия установленного на компьютере Windows?


 
Koster   (2004-08-10 13:10) [1]

а GetVersionEx() не устроит? правильнее ее юзать

для NT:


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]
"ProductName" и "CurrentBuildNumber"

но встречается и в других местах, причем не обязаны совпадать с реальной версией


 
MacroDenS ©   (2004-08-10 13:10) [2]

в 98 вроде здесь
HKEY_LOCALE_MACHINE\Software\microsoft\windows\CurrentVersion


 
Anton777 ©   (2004-08-10 13:59) [3]

Koster Попробовал но не могу что то разобраться плиз скинь текст как это сделать!


 
Koster   (2004-08-10 14:21) [4]

Сначала читай здесь:

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=15-988622288

Потом пиши что-то типа того:


Function GetOSName : string;
var
VI  : TOSVersionInfo;
IsOSNT, IsOSW2K,
IsOS95, IsOSOSR2,IsOS98  : boolean;
begin
 FillChar(VI, SizeOf(VI), 0);
 VI.dwOSVersionInfoSize := SizeOf(VI);
 GetVersionEx(VI);
 // Проверка и расшифровка версии и платформы
 IsOS95   := (VI.dwMajorVersion>=4) and (VI.dwMinorVersion=0) and (VI.dwPlatformId=VER_PLATFORM_WIN32_WINDOWS);
 IsOS98   := (VI.dwMajorVersion >= 4) and (VI.dwMinorVersion>0) and (VI.dwPlatformId=VER_PLATFORM_WIN32_WINDOWS);
 IsOSOSR2 := (VI.dwMajorVersion >= 4) and (VI.dwMinorVersion=0) and (lo(VI.dwBuildNumber)>1000) and (VI.dwPlatformId=VER_PLATFORM_WIN32_WINDOWS);
 IsOSW2K  := (VI.dwMajorVersion >= 5) and (VI.dwPlatformId=VER_PLATFORM_WIN32_NT);
 IsOSNT   := (VI.dwPlatformId = VER_PLATFORM_WIN32_NT) and not(IsOSW2K);
 // Формирование названия ОС
 Result:="Неизвестная ОС";
 if IsOS95 then
  Result:="Windows 95";
 if IsOSOSR2 then
  Result:="Windows 95 OSR2";
 if IsOS98 then
  Result:="Windows 98";
 if IsOSW2K then
  Result:="Windows 2000 Build "+inttostr(VI.dwBuildNumber);
 if IsOSNT then
  Result:="Windows NT "+inttostr(VI.dwMajorVersion)+"."+inttostr(VI.dwMinorVersion);
end;


Еще бы неплохо сюда Windows XP добавить.
Сам не разберешься - поищи по инету, таких примеров полно, или используй этот.

Ну или через реестр, если надо только название версии выковырять.
Сначала определить , NT у нас или 9x, а потом из реестра по двум указанным выше адресам реестра версию в виде строки читать.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.036 c
14-1091366437
Dima
2004-08-01 17:20
2004.08.22
Впрос по железу


14-1091692034
GRAND25
2004-08-05 11:47
2004.08.22
Мы тут все отдыхаем, что ли?


3-1090831277
Poma
2004-07-26 12:41
2004.08.22
Учет времени по каждому клиенту


4-1089465994
AD_infiniTUM
2004-07-10 17:26
2004.08.22
Изменение стиля у ComboBox а


1-1091625149
Relaxxx
2004-08-04 17:12
2004.08.22
Как одному гриду назначит два попуп меню, на заголовок грида и на





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский