4D v15.4PLATFORM PROPERTIES |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v15.4
PLATFORM PROPERTIES
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PLATFORM PROPERTIES ( platform {; system {; processor {; language}}} ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| platform | 倍長整数 |
|
2 = Mac OS、3 = Windows | |||||
| system | 倍長整数 |
|
起動しているバージョンによって異なる | |||||
| processor | 倍長整数 |
|
プロセッサファミリー | |||||
| language | 倍長整数 |
|
使用しているシステムによって異なる | |||||
PLATFORM PROPERTIESコマンドは、起動しているオペレーティングシステムのタイプ、バージョンやオペレーティングシステムの言語、マシンにインストールされているプロセッサに関する情報を返します。
PLATFORM PROPERTIESは、環境情報を引数platform、system、processorおよびlanguage引数に渡します。
platformは使用されているオペレーティングシステムを示します。この引数は、以下の既定の定数の一つを返します:
| 定数 | 型 | 値 |
| Mac OS | 倍長整数 | 2 |
| Windows | 倍長整数 | 3 |
4DのMac OSバージョンが起動している場合、引数systemは32ビット(倍長整数) 値を返します。高レベルのワードは使用されません。低レベルのワードの構成は次のとおりです。
- 高バイトは主要なバージョン番号を含みます。
- 低バイトは2ニブル(各4ビット) で構成されます。高ニブルはメジャーアップデートバージョン番号です。低ニブルはマイナーアップデートバージョンです。その例として、システム9.0.4 は$0904のようにコード化され 、少数値2308を受け取ります。
Note: % (モジュロ) と \ (整数除算) 数値演算子 またはビットワイズ演算子を使用して、これらの値を抽出できます。
次のフォーミュラを使用して、Mac OSの主なバージョン番号を調べます。
PLATFORM PROPERTIES($vlPlatform;$vlSystem)
$vlResult:=$vlSystem\256
//If $vlResult = 16 --> Mac OS 10.x 環境下を使用中
//If $vlResult # 16 --> 別のMac OS バージョンを使用中4DのWindowsバージョンが起動している場合、引数systemは32ビット(倍長整数) 値を返します。ビットとバイトは次のように構成されます。
高レベルのバイトに0が代入された場合、Windows NT、Windows 2000、Windows XPまたはWindows Vistaが起動していることを意味します。バイトに1が代入された場合、お使いのWindowsのバージョンが古すぎる事を意味します。
Note: 高レベルのバイトは、倍長整数値の記号を決定します。そのため、4Dでは、system引数に返された値をチェックするだけで十分です。返された値が負の値であった場合、お使いのWindowsのバージョンは廃止予定であることを意味しています。また、ビットワイズ演算子を使用する事も可能です。
低バイトはWindowsのメジャーなバージョン番号を表します:
次の低バイトはWindowsのマイナーバージョン番号を表します。Windows 10が起動していると、 3が返されます。
Note: % (モジュロ) と \ (整数除算) 数値演算子またはビットワイズ演算子を使用して、これらの値を抽出できます。
引数processorは、マシンのマイクロプロセッサファミリを示します。2つの値が返されます。これらは定数のフォームで利用可能です。| 定数 | 型 | 値 |
| Intel compatible | 倍長整数 | 586 |
| Power PC | 倍長整数 | 406 |
引数platformとprocessorを組み合わせることによって、使用しているマシンが、“MacIntel” タイプであるかどうかを確実に知ることができます(platform=Mac OSとprocessor=Intel Compatible) 。
引数languageを使用して、データベースを実行しているシステムの現在の言語を調べます。以下は、コードとそれに対応する言語を表したリストです。これらのコードは引数に返されます。| Code | Language |
| 1 | Arabic |
| 2 | Bulgarian |
| 3 | Catalan |
| 4 | Chinese |
| 5 | Czech |
| 6 | Danish |
| 7 | German |
| 8 | Greek |
| 9 | English |
| 10 | Spanish |
| 11 | Finnish |
| 12 | French |
| 13 | Hebrew |
| 14 | Hungarian |
| 15 | Icelandic |
| 16 | Italian |
| 17 | Japanese |
| 18 | Korean |
| 19 | Dutch |
| 20 | Norwegian |
| 21 | Polish |
| 22 | Portuguese |
| 24 | Romanian |
| 25 | Russian |
| 26 | Croatian |
| 26 | Serbian |
| 27 | Slovak |
| 28 | Albanian |
| 29 | Swedish |
| 30 | Thai |
| 31 | Turkish |
| 33 | Indonesian |
| 34 | Ukrainian |
| 35 | Belarusian |
| 36 | Slovenian |
| 37 | Estonian |
| 38 | Latvian |
| 39 | Lithuanian |
| 41 | Farsi |
| 42 | Vietnamese |
| 45 | Basque |
| 54 | Afrikaans |
| 56 | Faeroese |
Note: コマンドがシステムの言語を識別できない場合、値9(English) が返されます。
次のプロジェクトメソッドは、使用しているOSソフトウェアを示すアラートボックスを表示します。
//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=3)
$vsPlatformOS:="Windows™ 8.1"
Else
$vsPlatformOS:="Windows (undetermined version)"
End case
:($winMajVers=10) //$vlSystemもまた10
$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)Windowsでは以下のような警告ボックスが表示されます:

Mac OSでは以下のような警告ボックスが表示されます:

プロダクト: 4D
テーマ: システム環境
番号:
365
変更: 4D v11 SQL
ランゲージリファレンス ( 4D v15)
ランゲージリファレンス ( 4D v15.4)
ランゲージリファレンス ( 4D v15.3)
コメントを追加