4D v16.3PLATFORM PROPERTIES |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
PLATFORM PROPERTIES
|
PLATFORM PROPERTIES ( plataforma {; sistema {; procesador {; lenguaje}}} ) | ||||||||
Parámetro | Tipo | Descripción | ||||||
plataforma | Entero largo |
![]() |
2 = Mac OS, 3 = Windows | |||||
sistema | Entero largo |
![]() |
Depende de la versión que utilice | |||||
procesador | Entero largo |
![]() |
Familia del procesador | |||||
lenguaje | Entero largo |
![]() |
Depende del sistema que utilice | |||||
Si está corriendo una versión Mac OS de 4D, el parámetro sistema devuelve un valor de 32 bits (Entero largo), en el cual la palabra de nivel más alto no se utiliza y la palabra de nivel más bajo se estructura de esta forma:
- El byte superior contiene el número de versión principal,
- El byte inferior está compuesto de dos cuartetos o nibbles (conjuntos de 4 bits). El nivel superior es el número de actualización principal y el nibble inferior el número de actualización secundaria. Ejemplo: el sistema 9.0.4 está codificado como $0904, de manera usted reciba el valor decimal 2308.
Utilice la siguiente fórmula para conocer el número de versión principal de Mac OS:
PLATFORM PROPERTIES($vlPlatform;$vlSystem)
$vlResult:=$vlSystem\256
//If $vlResult = 16 --> usted está bajo Mac OS 10.x
//If $vlResult # 16 --> usted está bajo otra versión Mac OS
Si está corriendo una versión Mac OS de 4D, el parámetro sistema devuelve un valor de 32 bits (Entero largo), en el cual la palabra de nivel más alto no se utiliza y la palabra de nivel más bajo se estructura de esta forma:
- El byte superior contiene el número de versión principal,
- El byte inferior está compuesto de dos cuartetos o nibbles (conjuntos de 4 bits). El nivel superior es el número de actualización principal y el nibble inferior el número de actualización secundaria. Ejemplo: el sistema 9.0.4 está codificado como $0904, de manera usted reciba el valor decimal 2308.
Utilice la siguiente fórmula para conocer el número de versión principal de Mac OS:
PLATFORM PROPERTIES($vlPlatform;$vlSystem)
$vlResult:=$vlSystem\256
//If $vlResult = 16 --> usted está bajo Mac OS 10.x
//If $vlResult # 16 --> usted está bajo otra versión Mac OS
Si está corriendo una versión Windows de 4D, el parámetro sistema devuelve un valor 32 bits (Entero largo), los bits y los bytes están estructurados así:
Si el bit superior vale 0, significa que usted está utilizando Windows NT, Windows 2000, Windows XP o Windows Vista. Si el bit vale 1, significa que está utilizando una versión muy antigua de Windows.
Nota: el bit superior determina el signo del valor Entero largo. Por lo tanto, en 4D, sólo necesita probar el valor devuelto por el sistema; si es negativo, está utilizando una versión obsoleta de Windows. Igualmente puede utilizar Operadores de bits.
El bit inferior siguiente da el número de versión secundaria de Windows. Bajo Windows 95, este valor es 0.
Nota: en 4D, puede extraer estos valores utilizando los Operadores numéricos % (módulo) y \ (división entera) o los Operadores de bits.
Constante | Tipo | Valor |
Power PC | Entero largo | 406 |
Intel compatible | Entero largo | 586 |
Código | Lenguaje |
1 | Árabe |
2 | Búlgaro |
3 | Catalán |
4 | Chino |
5 | Checo |
6 | Danés |
7 | Alemán |
8 | Griego |
9 | Inglés |
10 | Español |
11 | Finlandés |
12 | Francés |
13 | Hebreo |
14 | Húngaro |
15 | Islandés |
16 | Italiano |
17 | Japonés |
18 | Coreano |
19 | Holandés |
20 | Noruego |
21 | Polonia |
22 | Portugués |
24 | Rumano |
25 | Ruso |
26 | Croata |
26 | Serbio |
27 | Esloveno |
28 | Albanés |
29 | Suizo |
30 | Tailandés |
31 | Turco |
33 | Indonesio |
34 | Ucraniano |
35 | Bielarruso |
36 | Esloveno |
37 | Estonio |
38 | Latvio |
39 | Lituania |
41 | Farsi |
42 | Vietnamés |
45 | Vasco |
54 | Africano |
56 | Feroés |
Nota: si comando no puede identificar el lenguaje del sistema, se devuelve el valor 9 (inglés).
El siguiente método de proyecto muestra una caja de diálogo de alerta describiendo el sistema operativo utilizado:
//Método proyecto SHOW OS VERSION
PLATFORM PROPERTIES($vlPlatform;$vlSystem;$vlMachine)
If(($vlPlatform<2)|($vlPlatform>3))
$vsPlatformOS:=""
Else
If($vlPlatform=Windows)
$vsPlatformOS:=""
If($vlSystem<0)
$vsPlatformOS:="Windows version too old"
Else
$winMajVers:=$vlSystem%256
$winMinVers:=($vlSystem\256)%256
Case of
:($winMajVers=4)
$vsPlatformOS:="Windows™ NT"
:($winMajVers=5)
Case of
:($winMinVers=0)
$vsPlatformOS:="Windows™ 2000"
:($winMinVers=1)
$vsPlatformOS:="Windows™ XP"
:($winMinVers=2)
$vsPlatformOS:="Windows™ 2003"
Else
$vsPlatformOS:="Windows (undetermined version)"
End case
:($winMajVers=6)
Case of
:($winMinVers=0)
$vsPlatformOS:="Windows™ Vista"
:($winMinVers=1)
$vsPlatformOS:="Windows™ Seven"
:($winMinVers=2)
$vsPlatformOS:="Windows™ 10"
:($winMinVers=3)
$vsPlatformOS:="Windows™ 8.1"
Else
$vsPlatformOS:="Windows (undetermined version)"
End case
:($winMajVers=10) //$vlSystem=10 also
$vsPlatformOS:="Windows™ 10"
End case
End if
$vsPlatformOS:=$vsPlatformOS+" version "+String($winMajVers)+"."+String($winMinVers)
Else
$vsPlatformOS:="OS X version "
If(($vlSystem\256)=16)
$vsPlatformOS:=$vsPlatformOS+"10"
Else
$vsPlatformOS:=$vsPlatformOS+String($vlSystem\256)
End if
$vsPlatformOS:=$vsPlatformOS+"."+String(($vlSystem\16)%16)+(("."+String($vlSystem%16))*Num(($vlSystem%16)#0))
End if
End if
ALERT($vsPlatformOS)
En Windows, obtiene una caja de diálogo similar a esta:
En Mac OS, obtiene una caja de diálogo similar a esta:
Producto: 4D
Tema: Entorno del sistema
Número
365
Modificado: 4D v11 SQL
Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)