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

Вниз

Как определить тип операционной системы ???   Найти похожие ветки 

 
Vyacheslav ©   (2004-12-27 13:05) [0]

Уважаемые мастера !!! Как узнать установленной операционной системы (Linux/Windows). Любые предложения. !!!


 
Gero ©   (2004-12-27 13:08) [1]

function GetOS: string;
begin
 Result := "Windows";
end;


 
Aleksandr.   (2004-12-27 13:08) [2]

Я вот так делал:

function GetOsVersionNo : real;
var
 W : TOsVersionInfo;
begin
 Result:=0.0;
W.dwOSVersionInfoSize:=SizeOf(TOsVersionInfo);
if GetVersionEx(W) then begin
  case W.dwMajorVersion of
      3 : if W.dwMinorVersion=51 then
            Result:=3.51
          else
            Result:=3.5;
      4 : case W.dwMinorVersion of
            0 : case W.dwPlatformId of
                  VER_PLATFORM_WIN32_WINDOWS : Result:=4.1;
                  else                         Result:=4.0;
                end;
            else
              Result:=4.2;
          end;
      5 : case W.dwMinorVersion of
            0 : Result:=5.0;
            1 : Result:=5.1;
          end
    end
  end
end;

function GetOSVersion : string;
var
 W : TOsVersionInfo;
begin
  Result:="Unknown";
  W.dwOSVersionInfoSize:=SizeOf(TOsVersionInfo);
  if GetVersionEx(W) then begin
    Result:=FloatToStr(GetOsVersionNo);
    case W.dwMajorVersion of
      3 : if W.dwMinorVersion=51 then
            Result:="Win NT 3.51"
          else
            Result:="Win NT 3.5";
      4 : case W.dwMinorVersion of
            0 : case W.dwPlatformId of
                  VER_PLATFORM_WIN32_WINDOWS : Result:="Win 95";
                  else                         Result:="Win NT 4.0";
                end;
            else
              Result:="Win 98";
          end;
      5 : case W.dwMinorVersion of
            0 : Result:="Win 2000";
            1 : Result:="Win XP";
          end
    end
  end
end;



 
KSergey ©   (2004-12-27 13:14) [3]

> [2] Aleksandr.   (27.12.04 13:08)

А где у тебя про Unix?? В вопросе-то про него тоже спрашивалось...


 
Aleksandr.   (2004-12-27 13:28) [4]

Да? Сорри, как-то пропустил. Это можно дефайном "MS Windows", насколько я помню. Дык пусть дерганет функцию под линуксоидом, сразу понятно будет, что она вернет (фигу в масле, я так понимаю).


 
Bork   (2004-12-27 14:33) [5]


> KSergey ©

А на <Вырезано модератором> тебе unix?? Все равно прога под ним не пойдет


 
Anatoly Podgoretsky ©   (2004-12-27 14:37) [6]

Очень просто, если программа для Виндоус запустилась, значит Виндоус и наоборот.


 
Gero ©   (2004-12-27 14:56) [7]


> Anatoly Podgoretsky ©   (27.12.04 14:37)

Ну правильно, я сразу же написал готовую функцию.


 
KSergey ©   (2004-12-27 15:40) [8]

>  [5] Bork   (27.12.04 14:33)
> А на <Вырезано модератором> тебе unix??

А вопрос почитать?


 
PVOzerski ©   (2004-12-27 16:59) [9]

Нет, ну если,положим, речь идет о том, как с виндового сервера узнать ОС клиента, не так уж вопрос и глуп, только сформулирован невнятно. А вот если прога должна запуститься на локальной машине - см. доку по эмуляторам, потому как запуск в "не своей" ОС возможен только через них, а уж как себя эмулятор объявляет - дело сугубо его личное.


 
DVM ©   (2004-12-27 17:38) [10]


> Vyacheslav ©   (27.12.04 13:05)  

Узнавать во время выполнения лишено смысла, но во впремя компиляции можно директивами компилятора.


 
Jay1982 ©   (2004-12-27 17:43) [11]


{$IFDEF LINUX}
{$IFDEF MSWINDOWS}

В конце

{$ENDIF}


 
Anatoly Podgoretsky ©   (2004-12-27 19:29) [12]

Кто больше сделает предположений.



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

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

Наверх




Память: 0.47 MB
Время: 0.035 c
14-1103894417
REA
2004-12-24 16:20
2005.01.16
Использование Out


6-1098809212
Mirror
2004-10-26 20:46
2005.01.16
WININET.DLL


1-1104408402
denis24
2004-12-30 15:06
2005.01.16
RichEdit


1-1104034380
Viktop
2004-12-26 07:13
2005.01.16
По какому рисунку был сделан клик?


1-1104314237
denis24
2004-12-29 12:57
2005.01.16
Поток и переменная





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский