| 4D v15 R3PLATFORM PROPERTIES | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v15 R3
 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 R3)
	
	ランゲージリファレンス ( 4D v15)
	
	
	ランゲージリファレンス ( 4D v15.4)
	
	ランゲージリファレンス ( 4D v15.3)
 コメントを追加
コメントを追加