На главную
Подписка
Новости


Рейтинг@Mail.ru











Главная / DELPHI / Часто задаваемые вопросы и ответы на них / ОС и железо / Как определить, запущено ли приложение в Windows NT Сделать домашней страницей Добавить в избранное Написать писмо

Как определить, запущено ли приложение в Windows NT


Умирает Питер Нортон. На том свете ему за многочисленные заслуги перед компьтерщиками всего мира предлагают выбрать место жительства - Рай или Ад. Походил Нортон по Раю, посмотрел - Ангелы на лирах играют, нектар пьют - скучно. Пошел на Ад посмотреть. Заходит, а там Билл Гейтс за компом сидит - клавиши топчет. Глянул на это дело Питер и пулей к Богу: "Все - говорит - хочу в Аду жить!". Бог начинает выяснять причину такого выбора, Нортон объясняет про скуку в Раю и что в Аду Билл Гейтс за компом развлекается. На что Бог отвечает Нортону: - Он не развлекается - это у него Адское наказание. - Какое ?! - Он пишет MicrosoftOffice, чтоб работал по OS/2 на ЕС-1840.

Следующий кодкомпилируется как на 16-ти, так и на 32-битных платформах.


{$IFNDEF WIN32}
const
  WF_WINNT = $4000;
{$ENDIF}

function IsNT : bool;
{$IFDEF WIN32}
var
  osv : TOSVERSIONINFO;
{$ENDIF}
begin
  result := true;
  {$IFDEF WIN32}
  GetVersionEx(osv);
  if osv.dwPlatformId = VER_PLATFORM_WIN32_NT then
    exit;
  {$ELSE}
  if ((GetWinFlags and WF_WINNT) = WF_WINNT ) then
    exit;
  {$ENDIF}
  result := false;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if IsNt then
    ShowMessage('Running on NT')
  else
    ShowMessage('Not Running on NT');
end;


Copyright ©   "DELPHI WORLD"   E-mail:   delphiworld@mail.ru  http://www.delphiworld.narod.ru
Источник получения информации: http://www.delphiworld.narod.ru
Hosted by uCoz