![]() |
[Kompo] TWindowsVersionsInfo - Kompo zur Windowserkennung
Liste der Anhänge anzeigen (Anzahl: 3)
TWindowsVersionsInfo - Kompo zur Windowserkennung
Version: 1.5 Da mehrfach danach gefragt wurde hab ich mal die Windowserkennng in eine Klasse gepackt, die per Direktive auch als VLC-Kompo auf die Form geklatscht werden kann. Die Kompo ist nix besonderes, halt nur den Kram, den ich schon für die CodeLib gepostet hatte. Ich hab jetzt die Erkennung der Vista- und Windows Server 2008 Editions ohne WMI implementiert.
Code:
Changelog zur Version 1.0.1:
* Kappselung als Kompo/Klasse
* Erkennung der Vista- und Windows Server 2008 Editions ohne WMI implementiert. + Erkennung der K(N), N Editions von WIndows XP (Pro, Home) und WIndows Server 2003. + Erkennung der Windows XP Embedded + Erkennung der Windows Home Server Version ( [url]http://de.wikipedia.org/wiki/Windows_Home_Server[/url]) + neue Betas werden erkannt Fix: Fix bei Erkennung der Windows Server 2003 Web Edition
Code:
Changelog zur Version 1.0:
- Erkennung der Vista/Server2008 Revision überarbeitet
- Erkennung von Windows Server 2008 RC0/RC1/RTM - Code lässt sich unter Delphi 2009 compilieren - Support für Windows 7 / Server 2008 R2 - neue Properties: - Codename - IsBeta - Erkennung für Windows Vista / Server 2008 Sp2 - Erkennung für neue Windows Server 2008 Editionen
Code:
Unterstütze Versionen:
Fix: Units lies sich nicht als nonVCL kompilieren
+ Longhorn M6 4039 Erkennung hinzugefügt
Quellen:
Bugs:
Code:
Aufbau:
#1: Unit lässt sich als non VCL nicht kompilieren. beseitigt in Version 1.0.1
Hier gibts eine Liste der Öffentlichen Funktionen Properties.
Delphi-Quellcode:
Nach dem Erzeugen einer Instanz könnt ihr die verschiendensten Werte abfragen :
function IsWindows2008ServerCore : boolean;
function IsServer : boolean; function IsWorkstation : boolean; function IsMediaCenterEdition : boolean; function IsTabletPCEdition : boolean; property MajorVersion : Byte read FMajorVersion; property MinorVersion : Byte read FMinorVersion; property BuildNumber : DWORD read FBuild; property BuildRevision : DWORD read FBuildRev; property ServicePack : string read FServicePack; property WindowsVersionsString : string read FFullName; property BuildLab : string read FBuildLab; property BuildLabEx : string read FBuildLabEx; property ServicePackMajor : Byte read FServicePackMajor; property ServicePackMinor : Byte read FServicePackMinor; property PlatformID : TWinType read FWinType; property WindowsVersion : TWindowsVersions read FWindowsVersion; property WindowsEdition : TWinEdition read FEdition; property IsBeta : boolean read FIsBeta; property Codename : string read FCodename; property ProcessorArchitecture : TProcessorArchitecture read FProcessorArchitecture; end;
Delphi-Quellcode:
und ihr könnt auf spezielle Windowsversionsgruppen abfragen, die als Enum vorliegen:
wvi := TWindowsVersionInfo.Create(self);
Edit_ComplString.Text := wvi.WindowsVersionsString; Edit1.Text := wvi.ServicePack; Edit2.Text := IntToStr( wvi.MajorVersion ); Edit3.Text := IntToStr( wvi.MinorVersion ); Edit4.Text := IntToStr( wvi.BuildNumber );
Delphi-Quellcode:
Damit fragt ihr nach ob das aktuelle OS ein Vista OS ist. Wenn ihr jetzt auf eine spezielle Edition abfragen wollt, dann könnt ihr das Property WindowsEdition auf einen Wert testen:
if wvi.WindowsVersion = wvWinVista then
Delphi-Quellcode:
Die weiteren Werte sind in der Unit zu finden.
if wvi.WindowsEdition = weVistaUltimate then // Test auf WIndows Vista Ultimate
Weitere Properties: Abfrag der Platform (WinNT, WIn9x) und der Processorarchiteture gibts auch als Enums. So, das sollte das wichtigeste sein damit ihr loslegen könnt. Besonderen Dank geht an die Tester, die mein Testprogramm vor einigen Wochen getestet haben :) Dann hab ich noch die Unit cruStrSplitter.pas genutzt. Von wehm diese ist weiß ich jetzt grad nicht. An diesen User gehen auch Credits. |
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
:hello: Super!
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Liest sich prima, mal schauen, ob das unter D7 auch funzt :thumb:
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
ich hatte es unter D7 getestet. Bei früheren Versionen muss ich passen, da ich keine solche Version besitze.
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Muss das denn eine Kompnente sein? Reicht nicht auche ine einfache Unit?
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Kommentiere das {USE_VCL} aus und du hast eine normale Klasse ohne VCL ;)
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Ah, prima. Unter was für einer Lizenz steht denn eigentlich der Code?
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Zitat:
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Zitat:
Zitat:
|
Re: [Kompo] TWIndowsVersionsInfo - Kompo zur Windowserkennun
Was bedeuten denn die Versionen N, K und KN?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:26 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