Como identifico a versão de Windows com o Delphi?
Gostaria de saber como identificar que versão do Windows está rodando num computador através da minha aplicação, de forma que se identifique se é Win95, 98, Win2000, ou WinXP, alguém pode me ajudar?
Rodrigop
Curtidas 1
Melhor post
Carnette
28/08/2003
Pegar versão de windows
uses registry;
function GetWindowsVersion: string;
var
VerInfo: TOsversionInfo;
PlatformId, VersionNumber: string;
Reg: TRegistry;
begin
VerInfo.dwOSVersionInfoSize := SizeOf(VerInfo);
GetVersionEx(VerInfo);
// Detect platform
Reg := TRegistry.Create;
Reg.RootKey := HKEY_LOCAL_MACHINE;
case VerInfo.dwPlatformId of
VER_PLATFORM_WIN32s:
begin
// Registry (Huh? What registry?)
PlatformId := ´Windows 3.1´;
end;
VER_PLATFORM_WIN32_WINDOWS:
begin
// Registry
Reg.OpenKey(´\SOFTWARE\Microsoft\Windows\CurrentVersion´, False);
PlatformId := Reg.ReadString(´ProductName´);
VersionNumber := Reg.ReadString(´VersionNumber´);
end;
VER_PLATFORM_WIN32_NT:
begin
// Registry
Reg.OpenKey(´\SOFTWARE\Microsoft\Windows NT\CurrentVersion´, False);
PlatformId := Reg.ReadString(´ProductName´);
VersionNumber := Reg.ReadString(´CurrentVersion´);
end;
end;
Reg.Free;
Result := PlatformId + ´ (version ´ + VersionNumber + ´)´;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := GetWindowsVersion;
end;
GOSTEI 1
Mais Respostas
Rodrigop
28/08/2003
Muito obrigado pela ajuda, funcionou muito bem!
GOSTEI 0