Главная страница | назад





Article #16430: How can I tell in code if my application is running on Windows NT

 Question and Answer Database

FAQ1430D.txt   How can I tell in code if my application is running on Windows NT
Category   :VCL
Platform    :All
Product    :All 32 bit  

Question:
How can I tell in code if my application is running on Windows
NT?

Answer:
The following example demonstrates how to detect if your
application is running under Windows NT. Note that the code will
compile under both 16 and 32 bit platforms.

Example:

{$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;

7/16/98 4:31:28 PM
 

Last Modified: 01-SEP-99