PROPRIETES PLATE FORME

4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant

version 2004.2 (Modifiée)


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

ParamètreTypeDescription
plateFormeNumérique1 = Macintosh 68K
2 = Power Macintosh
3 = Windows
systèmeNumériqueDépend de la version que vous utilisez
machineNumériqueDépend de la version que vous utilisez
langueNumériqueDépend du système que vous utilisez

Description

La commande PROPRIETES PLATE FORME retourne des informations sur le type de plate-forme 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, machine et langue.

plateForme indique si vous utilisez une version PowerPC ou Windows de 4e Dimension. Ce paramètre retourne une des constantes prédéfinies suivantes :

ConstanteTypeValeur
Macintosh 68KEntier long1 (obsolète)
Power MacintoshEntier 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 4e Dimension, 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 4e Dimension, 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 ou Windows 2000. S'il vaut 1, 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 ou Windows XP. 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.

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 machine retourne une valeur que vous pouvez comparer aux constantes prédéfinies suivantes :

ConstanteTypeValeur
INTEL 386Entier long386
INTEL 486Entier long486
PentiumEntier long586
PowerPC 601Entier long601
PowerPC 603Entier long603
PowerPC 604Entier long604
PowerPC G3Entier long510
Autres G3 et supérieursEntier long406

Note : Une liste à jour des numéros Macintosh est publiée par Apple Computer, Inc. dans sa documentation technique. De nouvelles valeurs apparaissent à mesure qu'Apple ou d'autres fabricants créent de nouveaux modèles de Macintosh.

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<1) | ($vlPlatform>3))
      $vsPlatformOS:=""
   Sinon 
      Si ($vlPlatform=3)
         $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
            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   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant