システム ツール

グローバル構造体 systemTools は、3ds Max 4 で MAXScript に追加され、3ds Max 2008 および 3ds Max 2014 で拡張されました。·

この関数のグループを使用すると、3ds Max が実行されているシステムに関するさまざまな情報を収集できます。

   

systemTools.NumberOfProcessors()   

オペレーティング システムに従って、使用可能なプロセッサの数(コア)を返します。

   

systemTools.GetScreenWidth applyUIScaling:<true>

デスクトップを複数のモニタに拡張した場合を含めた画面の幅を返します。

applyUIScaling パラメータは、true に設定されている場合、HDPI ディスプレイに必要なすべてのスケールを適用します。

   

systemTools.GetScreenHeight applyUIScaling:<true>

デスクトップを複数のモニタに拡張した場合を含めた画面の高さを返します。

applyUIScaling パラメータは、true に設定されている場合、HDPI ディスプレイに必要なすべてのスケールを適用します。

   

systemTools.IsWindows98or2000() 

3ds Max 2017 より前のバージョンでは、オペレーティング システムが Windows98、Windows2000、Windows XP、Windows Vista、または Windows 7 の場合に True を返しました。

   

systemTools.IsWindows9x() 

3ds Max 2017 より前のバージョンでは、OS が Windows 9x 系の場合に True を返しました。

   

systemTools.IsDebugging() 

デバッガで実行されている場合は True を返します。

   

systemTools.DebugPrint <string> 

指定した文字列を Visual Studio のデバッグ出力ウィンドウに出力します。

3ds Max 2011 以降 で使用可能です。

   

systemTools.getEnvVariable <string> 

指定された環境変数の内容を返します。指定された環境変数が存在しない場合は、undefined 値を返します。

3ds Max 2008 以降で使用可能です。従来、Avguard 機能拡張として提供されていた機能です。

systemTools.getEnvVariable "PATH"
"C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Common Files\Autodesk Shared\;C:\Program Files\backburner 2\;"

   

<bool>systemTools.setEnvVariable <string> { <string> | undefined } 

指定された環境変数の内容を設定します。

設定できた場合は True、できなかった場合は False を返します。

2 番目の引数の値が undefined である場合、環境変数は削除されます。

3ds Max 2008 以降で使用可能です。従来、Avguard 機能拡張として提供されていた機能です。

   

<int>systemTools.getmaxstdio()

stdio レベルで(つまり fopen を通して)同時に開くことのできるファイルの数を返します。

3ds Max 2014 以降で使用可能です。

   

<int>systemTools.setmaxstdio <int newmax>

stdio レベルで(つまり fopen を通して)同時に開くことのできるファイルの最大数を設定します。

newmax 引数の有効な範囲は、512 ~ 2048です。

成功した場合は、新しい最大値を返します。

現在、値を大きくすることのみが許可されています。

最大数を低減しようとした場合は -1 を返します。

これは、たとえばより多くのポイント キャッシュ ファイルを並行して同時に読み込みたい場合などに使用することができます。

3ds Max 2014 以降で使用可能です。

   

<int>systemTools.getSystemMetrics <int>

win32 GetSystemMetrics() 関数を呼び出し、指定した値を渡します。戻り値は GetSystemMetrics()からの戻り値です。パラメータ値については、Win32 ドキュメントで getSystemMetrics を参照してください。 3ds Max 2017 以降で使用可能です。

-- get client window width
systemTools.getSystemMetrics 16
-->1920

   

<bool>systemTools.isAeroEnabled()

Windows Aero のテーマが有効な場合は true を返します。Windows 7 で Windows クラシック テーマを使用している場合は false を返します。3ds Max 2017 以降で使用可能です。

   

<array>systemTools.EnumDisplayDevices removeUIScaling:<true>

配列からなる配列を返します。外部配列内の各要素は特定のディスプレイ デバイスに対応します。各ディスプレイ デバイスの配列には、デバイス ID、デバイス名、デバイスの文字列、デバイスの状態フラグ、およびデバイス キーが含まれています。デバイスがデスクトップにアタッチされている場合、その配列にはデバイスの左上の X および Y ピクセル座標、その幅と高さが含まれています。ピクセル座標の基数は 0 です。 3ds Max 2017 以降で使用可能です。

ディスプレイ デバイスの詳細については、EnumDisplayDevices の MSDN ドキュメントを参照してください。

devices= systemTools.EnumDisplayDevices removeUIScaling:true
	 for d in devices do print d #nomap
	 #("\\.\DISPLAY1", "NVIDIA Quadro FX 4800", 5, "PCI\VEN_10DE&DEV_05FE&SUBSYS_059410DE&REV_A1", "\Registry\Machine\System\CurrentControlSet\Control\Video{8A328D59-1288-485D-821D-7DA906E41335}\0000", 0, 0, 1920, 1080)
	 #("\\.\DISPLAY2", "NVIDIA Quadro FX 4800", 1, "PCI\VEN_10DE&DEV_05FE&SUBSYS_059410DE&REV_A1", "\Registry\Machine\System\CurrentControlSet\Control\Video{8A328D59-1288-485D-821D-7DA906E41335}\0001", 1920, 0, 1920, 1080)
	 #("\\.\DISPLAYV1", "RDPDD Chained DD", 2097160, "", "\Registry\Machine\System\CurrentControlSet\Control\Video{DEB039CC-B704-4F53-B43E-9DD4432FA2E9}\0000")
	 #("\\.\DISPLAYV2", "RDP Encoder Mirror Driver", 2097160, "", "\Registry\Machine\System\CurrentControlSet\Control\Video{42cf9257-1d96-4c9d-87f3-0d8e74595f78}\0000")
	 #("\\.\DISPLAYV3", "RDP Reflector Display Driver", 2097160, "", "\Registry\Machine\System\CurrentControlSet\Control\Video{b043b95c-5670-4f10-b934-8ed0c8eb59a8}\0000")
	 OK

<bool> GenerateMiniDumpAndContinue sendDump:<false> 

3ds Max 2018.2 Update の 新機能: ミニダンプ ファイルを生成して、引き続き実行します。sendDump が true の場合は、ミニダンプ ファイルがオートデスクに送信されます。

注:このメソッド、特に sendDump 引数は、ミニダンプ生成のテストが主な目的であるため、一般には使用しないでください。

生成されたミニダンプ ファイルは C:¥Users¥<UserName>¥AppData¥Local¥temp¥3dsmax_minidump.dmp に配置されます。

大きなミニダンプ ファイルが生成された場合、このファイルはC:¥Users¥<UserName>¥AppData¥Local¥temp¥3dsmax_minidump_big.dmp に配置されます。

『3ds Max 開発者用ガイド』の「3ds Max で生成されたミニダンプ ファイルを使用する」 も参照してください.

<bool> SetMiniDumpContents {#default | #basic | #medium | #full | <int>}

3ds Max 2018.2 Update の 新機能: 生成されたミニダンプの内容を設定します。#default および #medium フラグは同等です。

各レベルのミニダンプ フラグは、次のとおりです(ミニダンプ フラグ値の説明については、次のリンクを参照)。

<int> が指定されている場合、ビット セットはミニダンプ フラグ値に対応します。

『3ds Max 開発者用ガイド』の「3ds Max で生成されたミニダンプ ファイルを使用する」 も参照してください.

systemTools.SetBigMiniDumpContents {#default | #basic | #medium | #full | #off | <int>

3ds Max 2018.2 Update の 新機能: 生成された大きなミニダンプの内容を設定します。通常は #off に設定されています。

注:#full に設定されている場合、大きなミニダンプ ファイルが著しく巨大になって、2 GB を超えることがあります。使用の際は注意してください。

『3ds Max 開発者用ガイド』の「3ds Max で生成されたミニダンプ ファイルを使用する」 も参照してください.

内部でのみ使用されます:

<bool>systemTools.PB2_AllNoRefSafePointersTestingDisable <bool>disable

内部でのみ使用されます。

   

<bool>systemTools.PB2_AllNoRefSafePointersTestingDisables()

内部でのみ使用されます。

   

<bool>systemTools.allocateMemory()

内部でのみ使用されます。

   

<bool>systemTools.releaseMemory()

内部でのみ使用されます。

   

関連事項