![]() |
Ist Vista installiert?
Hi,
wie kann man in Delphi überprüfen ob man Vista verwendet. Ich brauche keinen Code welcher mir alle Service Packs und den ganzen Quatsch anzeigt sondern eine simple Abfrage ob Vista das aktuelle Betriebssystem ist. Folgenden Code habe ich im SwissDelphiCenter gesehen:
Delphi-Quellcode:
Kann mir jemand das auch für Vista erweitern? So eine Boolean Abfrage wäre natürlich am Besten!
const
{ operating system (OS)constants } cOsUnknown = -1; cOsWin95 = 0; cOsWin98 = 1; cOsWin98SE = 2; cOsWinME = 3; cOsWinNT = 4; cOsWin2000 = 5; cOsXP = 6; function GetOperatingSystem: Integer; var osVerInfo: TOSVersionInfo; majorVer, minorVer: Integer; begin Result := cOsUnknown; { set operating system type flag } osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo); if GetVersionEx(osVerInfo) then begin majorVer := osVerInfo.dwMajorVersion; minorVer := osVerInfo.dwMinorVersion; case osVerInfo.dwPlatformId of VER_PLATFORM_WIN32_NT: { Windows NT/2000 } begin if majorVer <= 4 then Result := cOsWinNT else if (majorVer = 5) and (minorVer = 0) then Result := cOsWin2000 else if (majorVer = 5) and (minorVer = 1) then Result := cOsXP else Result := cOsUnknown; end; VER_PLATFORM_WIN32_WINDOWS: { Windows 9x/ME } begin if (majorVer = 4) and (minorVer = 0) then Result := cOsWin95 else if (majorVer = 4) and (minorVer = 10) then begin if osVerInfo.szCSDVersion[1] = 'A' then Result := cOsWin98SE else Result := cOsWin98; end else if (majorVer = 4) and (minorVer = 90) then Result := cOsWinME else Result := cOsUnknown; end; else Result := cOsUnknown; end; end else Result := cOsUnknown; end; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(IntToStr(GetOperatingSystem)); end; {************************************************} { Some useful functions } {************************************************} function IsXP: Boolean; var OS: TOSVERSIONINFO; begin OS.dwOSVersionInfoSize := SizeOf(TOSVERSIONINFO); GetVersionEx(osv); Result := (OS.dwPlatformId = VER_PLATFORM_WIN32_NT) and (OS.dwMajorVersion = 5) and (OS.dwMinorVersion = 1); end; MFG Lars Wiltfang |
Re: Ist Vista installiert?
Vista ist Version 6.0, Windows 7 ist 6.1 (Major.Minor). Das solltest du hinbekommen
|
Re: Ist Vista installiert?
Ok, thx.
|
Re: Ist Vista installiert?
Am besten gleich die aktualisierten Funktionen der JCL verwenden.
|
Re: Ist Vista installiert?
Das hätte man auch herausfinden können, indem man unter Vista ein Programm startet, das GetVersionEx aufruft und dann MajorVersion und MinorVersion ausgibt (zumindest ich hätte das so gemacht) :zwinker:
|
Re: Ist Vista installiert?
Wer ist schlauer? Der, der die Arbeit selber macht oder der, der sie machen lässt? :zwinker:
|
Re: Ist Vista installiert?
Ich gebe zu, dass die DP viel weniger Beiträge hätte, wenn hier jeder selbst denken würde (wo kommen wir denn da hin? :mrgreen:)
|
Re: Ist Vista installiert?
:lol: :thumb:
|
Re: Ist Vista installiert?
Tach,
und wie finde ich heraus, ob das ein "Windows Server 2008 Standard" ist? Er zeigt bei mir 6.0 sprich Vista an. Ich habe schon geschaut, ob die vielleicht den Typen TOSVersionInfo erweitert haben oder so, keine Ahnung. Kann mir da jemand helfen? Stefan |
Re: Ist Vista installiert?
Wie schon oben genannt: Am besten gleich die aktualisierten Funktionen der JCL verwenden. Die ist schon entsprechend erweitert!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz