Accueil > > > DÉTECTION WINDOWS TOUTES VERSIONS
DÉTECTION WINDOWS TOUTES VERSIONS
Information sur la source
Description
Comment connaître la versionde Windows sur laquelle s'éxécute votre programme, de 3.1 à XP ?
Source
- //Déclarer un type énuméré :
- TWindowsVersion = (twvUnknow, twvWin31, twvWin951, twvWin952, tWvWin981,
- tWvWin982, tWvWinme, tWvWin9x, tWvWinnt35, tWvWinnt4,
- tWvWin2k, tWvWinxp, tWvWinnt);
-
- //*************************************************************
- // Fonction Trouvant la Version de Windows
- //*************************************************************
- function WindowsVersion:TWindowsVersion;
- var
- VI : TOSVersionInfo;
- WinVersion : TWindowsVersion;
- begin
- VI.dwOSVersionInfoSize:= SizeOf(VI);
- GetVersionEx(VI);
-
- WinVersion := twvunknow ;
- case VI.dwPlatformID of
- VER_PLATFORM_WIN32s: WinVersion := tWvWin31;
-
- VER_PLATFORM_WIN32_WINDOWS:
- case VI.dwMinorVersion of
- 0 : if Trim(VI.szCSDVersion[1]) = 'B' then
- WinVersion:= tWvWin952
- else
- WinVersion:= tWvWin951;
- 10 : if Trim(VI.szCSDVersion[1]) = 'A' then
- WinVersion:= tWvWin982
- else
- WinVersion:= tWvWin981;
- 90 : if (VI.dwBuildNumber = 73010104) then
- WinVersion:= tWvWinme;
-
- else WinVersion:= tWvWin9x;
- end;
-
- VER_PLATFORM_WIN32_NT:
- case VI.dwMajorVersion of
- 3 : WinVersion:= tWvWinnt35;
- 4 : WinVersion:= tWvWinnt4;
- 5 : case VI.dwMinorVersion of
- 0 : WinVersion:= tWvWin2k;
- 1 : WinVersion:= tWvWinxp;
- else WinVersion:= tWvWinnt
- end;
- end;
- end;
- result := WinVersion;
- end;
-
- function WindowsVersionStr:string;
- var
- Winver : TWindowsVersion;
- begin
- // on récupère le résultat ainsi:
- // VERSION DE WINDOWS
- WinVer := WindowsVersion;
- Result := 'Inconnu';
- case WinVer of
- twvunknow : Result :='Inconnu';
- twvwin31 : Result :='Windows 3.1';
- twvwin951 : Result :='Windows 95 OSR 1';
- twvwin952 : Result :='Windows 95 OSR 2';
- twvwin981 : Result :='Windows 98 OSR 1';
- twvwin982 : Result :='Windows 98 OSR 2';
- twvwinme : Result :='Windows Me';
- twvwin9x : Result :='Windows 9x'; // Si Windows Inconnu parmi les Win9x
- twvwinnt35 : Result :='Windows NT 3.5';
- twvwinnt4 : Result :='Windows NT 4';
- twvwin2k : Result :='Windows 2000';
- twvwinxp : Result :='Windows XP';
- twvwinnt : Result :='Windows NT'; // Si Windows Inconnu parmi les WinNT
- end;
- end;
-
//Déclarer un type énuméré :
TWindowsVersion = (twvUnknow, twvWin31, twvWin951, twvWin952, tWvWin981,
tWvWin982, tWvWinme, tWvWin9x, tWvWinnt35, tWvWinnt4,
tWvWin2k, tWvWinxp, tWvWinnt);
//*************************************************************
// Fonction Trouvant la Version de Windows
//*************************************************************
function WindowsVersion:TWindowsVersion;
var
VI : TOSVersionInfo;
WinVersion : TWindowsVersion;
begin
VI.dwOSVersionInfoSize:= SizeOf(VI);
GetVersionEx(VI);
WinVersion := twvunknow ;
case VI.dwPlatformID of
VER_PLATFORM_WIN32s: WinVersion := tWvWin31;
VER_PLATFORM_WIN32_WINDOWS:
case VI.dwMinorVersion of
0 : if Trim(VI.szCSDVersion[1]) = 'B' then
WinVersion:= tWvWin952
else
WinVersion:= tWvWin951;
10 : if Trim(VI.szCSDVersion[1]) = 'A' then
WinVersion:= tWvWin982
else
WinVersion:= tWvWin981;
90 : if (VI.dwBuildNumber = 73010104) then
WinVersion:= tWvWinme;
else WinVersion:= tWvWin9x;
end;
VER_PLATFORM_WIN32_NT:
case VI.dwMajorVersion of
3 : WinVersion:= tWvWinnt35;
4 : WinVersion:= tWvWinnt4;
5 : case VI.dwMinorVersion of
0 : WinVersion:= tWvWin2k;
1 : WinVersion:= tWvWinxp;
else WinVersion:= tWvWinnt
end;
end;
end;
result := WinVersion;
end;
function WindowsVersionStr:string;
var
Winver : TWindowsVersion;
begin
// on récupère le résultat ainsi:
// VERSION DE WINDOWS
WinVer := WindowsVersion;
Result := 'Inconnu';
case WinVer of
twvunknow : Result :='Inconnu';
twvwin31 : Result :='Windows 3.1';
twvwin951 : Result :='Windows 95 OSR 1';
twvwin952 : Result :='Windows 95 OSR 2';
twvwin981 : Result :='Windows 98 OSR 1';
twvwin982 : Result :='Windows 98 OSR 2';
twvwinme : Result :='Windows Me';
twvwin9x : Result :='Windows 9x'; // Si Windows Inconnu parmi les Win9x
twvwinnt35 : Result :='Windows NT 3.5';
twvwinnt4 : Result :='Windows NT 4';
twvwin2k : Result :='Windows 2000';
twvwinxp : Result :='Windows XP';
twvwinnt : Result :='Windows NT'; // Si Windows Inconnu parmi les WinNT
end;
end;
Conclusion
Ce code n'est pas de moi à l'origine, mais je l'ai retravaillé pour obtenir deux versions : * l'une renvoie un type TWindowsVersion * l'autre renvoie la version sous forme de chaîne
Historique
- 03 novembre 2004 22:16:33 :
- Une version beaucoup plus complète et à jour est disponible à l'adresse :
http://www.swissdelphicenter.ch/en/showcode.php?id=316
Si ça peut rendre service...
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
PRATIQUE DE SILVERLIGHT PAR ERIC AMBROSIPRATIQUE DE SILVERLIGHT PAR ERIC AMBROSI par MPOWARE
Je viens de finir la lecture du dernier livre d'
Eric Ambrosi
éditions PEARSON
Son livre donne une approche pratique de Silverlight qui sera aussi bien comprise par le développeur que par le designeur.
Tous les aspects du développement RIA sont abor...
Cliquez pour lire la suite de l'article par MPOWARE APPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NETAPPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NET par odewit
2 déclinaisons de Silverlight et 2 déclinaisons de Mono permettent dorénavant (ou permettront prochainement) de développer des applications .NET mobiles pour les principales plates-formes du marché :
Silverlight pour Symbian, basé sur Silverlight 2...
Cliquez pour lire la suite de l'article par odewit ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2 par ROMELARD Fabrice
Avec la dernière génération du lecteur MP3 de Microsoft, le ZUNE HD, Microsoft a publié une nouvelle version du logiciel pour PC. Ainsi, je me suis décidé à installer celle-ci sur mon Tablet PC ACER, comme toujours le logiciel est donc tél...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice L'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIESL'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIES par odewit
La tendance est aux interfaces naturelles (NUI), et le keynote de Bill Buxton au MIX l'a bien souligné.
La charte graphique et ergonomique de Windows Phone 7 a donc été entièrement repensée en vue d'obtenir un maximum d'efficacité sur ce point. En re...
Cliquez pour lire la suite de l'article par odewit
Forum
RE : DELPHIRE : DELPHI par overtaker
Cliquez pour lire la suite par overtaker RE : DELPHIRE : DELPHI par rt15
Cliquez pour lire la suite par rt15 DELPHIDELPHI par overtaker
Cliquez pour lire la suite par overtaker
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|