PROPRIETES PLATE FORME

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

version 2003 (Modifiée)


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

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

Description

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

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

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

ConstanteTypeValeur
Macintosh 68KEntier long 1
Power MacintoshEntier long 2
WindowsEntier long 3

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 MacOS 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 MacOS :

   PROPRIETES PLATE FORME($vlPlatform;$vlSystem)
   $vlResult:=$vlSystem\256
      `Si $vlResult = 8  --> vous êtes sous MacOS 8.x
      `Si $vlResult = 9  --> vous êtes sous MacOS 9.x
      `Si $vlResult = 16  --> vous êtes sous MacOS 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.

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