インタフェース: MXSDebugger

インタフェース > コア インタフェース > MXSDebugger

 

   

コア インタフェース - クイック ナビゲーション

3ds Max 8 以降では、MXSDebugger コア インタフェースによって、MAXScript デバッガの設定にアクセスできます。

   

Interface: MXSDebugger 

プロパティ:

MXSDebugger.isDialogOpen : boolean : Read   

[MAXScript デバッガ](Debugger)ダイアログ ボックスが開いている場合は true、閉じている場合は false が含まれます。読み込み専用です。

   

MXSDebugger.hWnd : HWND : Read 

[MAXScript デバッガ](Debugger)ダイアログ ボックスの Windows ハンドルが含まれます。読み込み専用です。

   

設定 - パラメータ

MXSDebugger.allowBreakOnThrow : boolean : Read|Write 

[ブレイク命令を許可する](Allow Break On Throw)チェックボックスの状態を取得/設定します。既定値は true です。

   

MXSDebugger.breakOnError : boolean : Read|Write 

[エラー箇所でブレイク](Break On Error)チェックボックスの状態を取得/設定します。既定値は false です。

   

MXSDebugger.breakOnException : boolean : Read|Write 

[例外箇所でブレイク](Break On Exception)チェックボックスの状態を取得/設定します。既定値は false です。

   

MXSDebugger.defaultBreakOnThrow : boolean : Read|Write 

[既定値 Throw debugBreak: オン](Default Throw debugBreak: on)チェックボックスの状態を取得/設定します。既定値は false です。

   

MXSDebugger.ignoreCaughtThrows : boolean : Read|Write 

[キャッチした Throw を無視](Ignore Caught Throws)チェックボックスの状態を取得/設定します。既定値は true です。

   

MXSDebugger.ignoreCaughtErrors : boolean : Read|Write 

[キャッチしたエラーを無視](Ignore Caught Errors)チェックボックスの状態を取得/設定します。既定値は true です。

   

MXSDebugger.ignoreCaughtExceptions : boolean : Read|Write 

[キャッチした Throw を無視](Ignore Caught Throws)チェックボックスの状態を取得/設定します。既定値は true です。

   

MXSDebugger.enabledInQuietMode : boolean : Read|Write 

[Quiet モードを有効](Enable in Quiet Mode)チェックボックスの状態を取得/設定します。既定値は false です。

   

MXSDebugger.enabledInNetRender : boolean : Read|Write 

[ネットワーク レンダリングを有効](Enable in Net Render)チェックボックスの状態を取得/設定します。既定値は false です。

   

MXSDebugger.allowUnsafeMethods : boolean : Read|Write 

[安全でないメソッド コールを許可](Allow Unsafe Method Calls)チェックボックスの状態を取得/設定します。既定値は false です。

true の場合、3ds Max をハングする可能性があるメソッドとプロパティ セットが、デバッガからの実行を許可されます。

多くの場合、ハングすると、コマンドのタイムアウト期間だけハングが続きます。

しかし一部のケースではハングが完全になり、3ds Max セッションを手動で終了する必要があります。

実行例

eval loadmaxfile "ateapot.max".

   

MXSDebugger.showGlobalConstants : boolean : Read|Write 

[グローバル定数を表示](Show Global Constants)チェックボックスの状態を取得/設定します。既定値は false です。

   

MXSDebugger.showFirstFrameOnly : boolean : Read|Write 

[開始フレームのみを表示](Show First Frame Only)チェックボックスの状態を取得/設定します。既定値は false です。true の場合は、トップ フレームに関連する情報のみが表示されます。

   

MXSDebugger.stayOnTop : boolean : Read|Write 

[最前面に配置](Stay On Top)チェックボックスの状態を取得/設定します。既定値は false です。true の場合、[MAXScript デバッガ](Debugger)ダイアログ ボックスは常に前面に表示されます。

   

MXSDebugger.clearOutputOnOpen : boolean : Read|Write 

[開いている出力をクリア](Clear Output On Open)チェックボックスの状態を取得/設定します。true に設定すると、ブレークが発生したときに、新しいスタック ダンプを作成する前に、デバッガーからのそれまでの出力がクリアされます。false に設定すると、既存の出力はそのまま保持され、そこに追加されます。既定値は true です。

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

   

設定 - 期間設定

MXSDebugger.commandTimeOutPeriod : DWORD : Read|Write 

コマンドのタイムアウト期間を秒単位で取得/設定します。既定値は 15.0 秒です。

   

MXSDebugger.breakTimeoutPeriod : DWORD : Read|Write 

ブレーク タイムアウト期間をミリ秒単位で取得/設定します。既定値は 5 ミリ秒です。

   

MXSDebugger.gcTimeoutPeriod : DWORD : Read|Write 

GC タイムアウト期間を秒単位で取得/設定します。既定値は 5.0 秒です。

   

MXSDebugger.breakCyclePeriod : DWORD : Read|Write 

ブレーク サイクル タイムアウト期間をミリ秒単位で取得/設定します。既定値は 1 ミリ秒です。

   

メソッド:

<void>MXSDebugger.openDialog break:<boolean> message:<string> setFocus:<boolean> 

   

break default value: false message default value: undefined setFocus default value: false 

[MAXScript デバッガ](Debugger)ダイアログ ボックスを開きます。

オプションのキーワード break: を true に指定すると、デバッガは 3ds Max の実行をブレークし、スタックをダンプします。

オプションのキーワード message: を undefined 以外に指定すると、文字列がメッセージ ウィンドウに出力されてからスタックがダンプされます。

オプションのキーワード setFocus: を true に指定するか、 break: を true にした場合は、[MAXScript デバッガ](Debugger)ダイアログ ボックスでフォーカスが設定されます。

例:

mxsdebugger.openDialog message:"Welcome to MAXScript Debugger"

   

<void>MXSDebugger.closeDialog() 

[MAXScript デバッガ](Debugger)ダイアログ ボックスを閉じます。

   

<void>MXSDebugger.writeString <string>message 

指定した文字列が[デバッガ](Debugger)のメッセージ キューに書き込まれます。末尾に改行は追加されず、文字列は表示されません。

後続のメッセージは同一行に追加されます。

明示的な改行シーケンス ¥n を指定すると、メッセージが表示されます。

例:

mxsdebugger.openDialog()
mxsdebugger.writeString "This text is "
mxsdebugger.writeString "on the same line.\n"

   

<void>MXSDebugger.writeLine <string>message 

指定した文字列が[デバッガ](Debugger)のメッセージ ウィンドウに書き込まれます。末尾に改行が自動的に追加されます。

メッセージはすぐに表示されます。

例:

mxsdebugger.openDialog()
mxsdebugger.writeLine "This message is a complete line."

関連事項