Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.24;
Скачать: CL | DM;

Вниз

Неверное определение версии Windows   Найти похожие ветки 

 
Psychedelic ©   (2006-08-15 20:50) [0]

Функция GetVersionEx . На WinXP PRO возвращает минор - 0, хотя должно быть - 1 . Другие параметры правильные.. В чем дело?!


 
begin...end ©   (2006-08-15 20:55) [1]

Приведите конкретный код.


 
Psychedelic ©   (2006-08-15 21:55) [2]

Тут и приводить ничего не надо, и так все понятно... На одном компьютере все ок. НА компьютере у друга такая ерунда.


 
begin...end ©   (2006-08-15 21:58) [3]

> Psychedelic ©   (15.08.06 21:55) [2]

А... Всё понятно, значит... Ну, тады ладно...

Поле OSVERSIONINFO.dwOSVersionInfoSize перед вызовом GetVersionEx проинициализировано?


 
Psychedelic ©   (2006-08-17 17:20) [4]

ДА. Это код из KOL  - процедура GetWINDOWSVer. На всех компах нормально, только на одном такая ерунда...


 
begin...end ©   (2006-08-17 17:53) [5]

> Psychedelic ©   (17.08.06 17:20) [4]
> Это код из KOL  - процедура GetWINDOWSVer.

Я извиняюсь, но нельзя ли этот код выложить здесь?


 
Psychedelic ©   (2006-08-17 19:04) [6]

Пожалуйста. Но причина не в коде....
function WinVer : TWindowsVersion;
{* Returns Windows version. }
var OVI: TOsVersionInfo;
begin
 if SaveWinVer <> $FF then Result := TWindowsVersion( SaveWinVer )
 else
 begin
   OVI.dwOSVersionInfoSize := Sizeof( OVI );
   GetVersionEx( OVI );
   with OVI do
   if dwPlatformId = VER_PLATFORM_WIN32_NT then
   begin
     Result := wvNT;
     if dwMajorVersion >= 6 then
       Result := wvLongHorn
     else begin
            if dwMajorVersion >= 5 then
              if dwMinorVersion >=1 then
                Result := wvXP
              else
                Result := wvY2K;
          end;
   end
      else
   if dwPlatformId = VER_PLATFORM_WIN32_WINDOWS then
   begin
     Result := wv95;
     if (dwMajorVersion > 4) or (dwMajorVersion = 4)
     and (dwMinorVersion >= 10)  then
       Result := wv98;
   end
      else
      Result := wv31; // Windows 3.1 (WIN32s)
   SaveWinVer := Ord( Result );
 end;
end;



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

Текущий архив: 2006.12.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.088 c
2-1165329350
Uncle
2006-12-05 17:35
2006.12.24
Автозагрузка


15-1164977042
low_man
2006-12-01 15:44
2006.12.24
Помогите песенку перевести


15-1164364051
alucard
2006-11-24 13:27
2006.12.24
BOOT: couldn t find NTLDR


2-1165249328
Tort
2006-12-04 19:22
2006.12.24
реестр


15-1164875898
Храмой
2006-11-30 11:38
2006.12.24
Глупый но вайжный для меня вопрос