PROPRIETES PLATE FORME

4D - Documentation   Français   English   German   Español   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant

version 11 (Modifiée)


PROPRIETES PLATE FORME (plateForme{; système{; processeur{; langue}}})

ParamètreTypeDescription
plateFormeNumérique2 = Mac OS, 3 = Windows
systèmeNumériqueDépend de la version que vous utilisez
processeurNumériqueFamille de processeur
langueNumériqueDépend du système que vous utilisez

Description

La commande PROPRIETES PLATE FORME retourne des informations sur le type de système d'exploitation que vous utilisez, la version et la langue du système d'exploitation ainsi que le processeur installé.

PROPRIETES PLATE FORME retourne ces informations dans les paramètres plateForme, système, processeur et langue.

plateForme indique le système d'exploitation utilisé. Ce paramètre retourne une des constantes prédéfinies suivantes :

ConstanteTypeValeur
Mac OSEntier long2
WindowsEntier long3

Les informations retournées dans le paramètre système dépendent de la version de 4e Dimension que vous utilisez.

Version Macintosh

Avec une version Mac OS de 4D, le paramètre système retourne une valeur sur 32 bits (Entier long), dans laquelle le "mot machine haut" est inutilisé et le "mot machine bas" est structuré ainsi :

- L'octet supérieur contient le numéro de version principal,

- L'octet inférieur est composé de deux "nibbles" de 4 bits chacun. Le nibble supérieur est le numéro de mise à jour principal et le nibble inférieur le numéro de mise à jour secondaire. Par exemple : le système 9.0.4 est codé $0904, vous recevrez donc la valeur décimale 2308.

Note : Dans 4D, vous pouvez extraire ces valeurs à l'aide des Opérateurs numériques % (modulo) et \ (division entière) ou des Opérateurs sur les bits.

Utilisez la formule suivante pour connaître le numéro de version principal de Mac OS :

   PROPRIETES PLATE FORME($vlPlatform;$vlSystem)
   $vlResult:=$vlSystem\256
      `Si $vlResult = 8  --> vous êtes sous Mac OS 8.x
      `Si $vlResult = 9  --> vous êtes sous Mac OS 9.x
      `Si $vlResult = 16  --> vous êtes sous Mac OS 10.x

Version Windows

Avec une version Windows de 4D, le paramètre système retourne une valeur sur 32 bits (Entier long), structurée ainsi :

Si le bit supérieur vaut 0, vous utilisez Windows NT, Windows 2000, Windows XP ou Windows Vista. S'il vaut 1 (obsolète), vous utilisez Windows 95 ou Windows 98.

Note : Le bit supérieur détermine le signe de la valeur Entier long. De ce fait, dans 4D, vous avez simplement besoin de tester la valeur ; si elle est positive, vous êtes sous Windows NT, Windows 2000, Windows XP ou Windows Vista. Vous pouvez également utiliser les Opérateurs sur les bits.

L'octet inférieur fournit le numéro de version principal de Windows. S'il vaut 4, vous utilisez Windows 95, 98 ou Windows NT 4. S'il vaut 5, vous utilisez Windows 2000 ou Windows XP (dans les deux cas, le signe de la valeur indique si vous utilisez Windows NT/2000 ou non). S'il vaut 6, vous utilisez Windows Vista.

L'octet inférieur suivant fournit le numéro de version secondaire de Windows. Sous Windows 95, sa valeur est 0.

Note : Dans 4D, vous pouvez extraire ces valeurs à l'aide des Opérateurs numériques % (modulo) et \ (division entière) ou des Opérateurs sur les bits.

Le paramètre processeur indique la "famille" du microprocesseur de la machine. Deux valeurs peuvent être renvoyées, disponibles sous forme de constantes :

ConstanteTypeValeur
Compatible IntelEntier long586
Power PCEntier long406

La combinaison des paramètres plateForme et processeur permet par exemple de savoir sans ambiguïté si la machine utilisée est de type "MacIntel" (plateForme=Mac OS et processeur=Compatible Intel).

Le paramètre langue permet de connaître la langue courante du système sur lequel est exécutée la base. Voici la liste des codes pouvant être retournés dans ce paramètre, ainsi que leur signification :

CodeLangue
1Arabe
2Bulgare
3Catalan
4Chinois
5Tcheque
6Danois
7Allemand
8Grec
9Anglais
10Espagnol
11Finlandais
12Français
13Hébreu
14Hongrois
15Islandais
16Italien
17Japonais
18Coréen
19Néerlandais
20Norvégien
21Polonais
22Portugais
24Roumain
25Russe
26Croate
26Serbe
27Slovaque
28Albanais
29Suédois
30Thailandais
31Turc
33Indonésien
34Ukrainien
35Bélarusse
36Slovène
37Estonien
38Letton
39Lithuanien
41Farsi
42Vietnamien
45Basque
54Afrikaans
56Féroïen

Note : Si la commande n'a pas pu identifier la langue du système, la valeur 9 (Anglais) est retournée.

Exemple

La méthode projet suivante affiche une boîte de dialogue d'alerte décrivant le système d'exploitation utilisé :

      ` Méthode projet VERSION SYSTEME

   PROPRIETES PLATE FORME($vlPlatform;$vlSystem;$vlMachine)
   Si (($vlPlatform<2) | ($vlPlatform>3))
      $vsPlatformOS:=""
   Sinon 
      Si ($vlPlatform=Windows)
         $vsPlatformOS:=""
         Si ($vlSystem<0)
            $winMajVers:=((2^31)+$vlSystem)%256
            $winMinVers:=(((2^31)+$vlSystem)\256)%256
            Si ($winMinVers=0)
               $vsPlatformOS:="Windows™ 95"
            Sinon 
               $vsPlatformOS:="Windows™ 98"
            Fin de si 
         Sinon 
            $winMajVers:=$vlSystem%256
            $winMinVers:=($vlSystem\256)%256
            Au cas ou
               : ($winMajVers=4)
                  $vsPlatformOS:="Windows™ NT"
               : ($winMajVers=5)
                  Si ($winMinVers=0)
                     $vsPlatformOS:="Windows™ 2000"
                  Sinon
                     $vsPlatformOS:="Windows™ XP"
                  Fin de si
               : ($winMajVers=6)
                  $vsPlatformOS:="Windows™ Vista"

            Fin de cas
         Fin de si 
         $vsPlatformOS:=$vsPlatformOS+" version "+Chaine($winMajVers)+"."+Chaine($winMinVers)
      Sinon 
         $vsPlatformOS:="Mac OS™ version "
         Si (($vlSystem\256) = 16)
            $vsPlatformOS:=$vsPlatformOS+"10"
         Sinon
            $vsPlatformOS:=$vsPlatformOS+Chaine($vlSystem\256)
         Fin de si
         $vsPlatformOS:=$vsPlatformOS+"."+Chaine(($vlSystem\16)%16)+
                                 (("."+Chaine($vlSystem%16))*Num(($vlSystem%16) # 0))
      Fin de si
   Fin de si 
   ALERTE($vsPlatformOS)

Sous Windows, vous obtenez une boîte de dialogue semblable à celle-ci :

Sous Mac OS, vous obtenez une boîte de dialogue semblable à celle-ci :

Référence

Opérateurs sur les bits.


4D - Documentation   Français   English   German   Español   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant