Fórum Versão do Windows #210146

28/01/2004

0

Gostaria de saber como faço para saber qual versao do windows esta rodando na máquina ... tipo se é 98 ... nt .... 2000 .... xp

Ja dei uma pesquisada aqui no forum e nao encontrei nada se alguem puder me dar uma dica

valew


Marcelo Bh

Marcelo Bh

Responder

Posts

28/01/2004

Vinicius2k

Marcelo,

uma função básica para retornar apenas a versão :

function SysVersionStr: string;
  function SysVersion(var Ver: _OSVERSIONINFOA): boolean;
  begin
    Ver.dwOSVersionInfoSize := SizeOf(Ver);
    Result := GetVersionEx(Ver);
  end;
var
  Ver: _OSVERSIONINFOA;
begin
  if SysVersion(Ver) then
  Result := IntToStr(Ver.dwMajorVersion) + ´.´ +
  IntToStr(Ver.dwMinorVersion)
  else
  Result := ´´;
end;


ex. de como usar : Label1.Caption:= SysVersionStr;

ou o bloco mais trabalhado (unit de exemplo) :

391 - Como obter informações do S.O. (Nome, Versão, Compilação) *
Vamos à função :

unit sobreManager;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls, Buttons, ExtCtrls;
type
  TfrmSobreManager = class(TForm)
  btnOK: TButton;
  ProductName: TLabel;
  Version: TLabel;
  Label1: TLabel;
  Label2: TLabel;
  Label3: TLabel;
  Copyright: TLabel;
  Panel1: TPanel;
  Image2: TImage;
  GroupBox1: TGroupBox;
  Bevel1: TBevel;
  stOSVersao: TStaticText;
  stOSBuilder: TStaticText;
  stOS: TStaticText;
  stOSService: TStaticText;
  procedure FormCreate(Sender: TObject);
  private
  { Private declarations }
  public
  { Public declarations }
  end;
var
  frmSobreManager: TfrmSobreManager;
implementation
 
{$R *.DFM}
// VERIFICA E APRESENTA AS INFORMAÇÕES do SISTEMA OPERACIONAL 
procedure TfrmSobreManager.FormCreate(Sender: TObject);
var
  verInfo : TOsVersionInfo;
  str : String;
  I : Word;
begin
verInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);
if GetVersionEx(verInfo) then begin
stOSVersao.Caption := ´Versão : ´+ IntToStr(verInfo.dwMajorVersion) +
IntToStr(verInfo.dwMinorVersion);
OSBuilder.Caption := ´Compilação : ´+IntToStr(verInfo.dwBuildNumber);
str := ´Sistema Operacional : ´;
case verInfo.dwPlatformId of
VER_PLATFORM_WIN32s : stOS.Caption := str +´Windows 95´;
VER_PLATFORM_WIN32_WINDOWS : stOS.Caption := str +´Windows 95 Osr2 / 98´;
VER_PLATFORM_WIN32_NT : stOS.Caption := str +´Windows NT´;
end;
str := ´´;
for I := 0 to 127 do
str := str + verInfo.szCSDVersion[I];
stOSService.Caption := ´Informações Adicionais : ´+ str;
end
end;
end.


* Extraído de DTDelphi 2.6 ( http://www.lloydsoft.hpg.ig.com.br )

T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar