次の方法で共有


IDataModelScript::Execute メソッド (dbgmodel.h)

Execute メソッドは、最後に成功した Populate 呼び出しによって指示されたスクリプトの内容を実行し、その内容に従ってデバッガーのオブジェクト モデルを変更します。 言語 (またはスクリプト プロバイダー) で "main 関数" が定義されている場合(ユーザー インターフェイスで架空の [スクリプトの実行] ボタンをクリックしたときに作成者が呼び出す関数)、"main 関数" は実行操作中に呼び出されません。 Execute 操作は、初期化操作とオブジェクト モデル操作のみを実行すると見なすことができます (ルート コードの実行や拡張ポイントの設定など)。 スクリプトの実行は、スクリプト プロバイダーとスクリプト クライアントの間の双方向の通信です。 エラー、デバッグ コントロール、およびその他のセマンティクスは、IDataModelScript と IDataModelScriptClient間の通信チャネルを介して渡されます。

実行操作が成功したか失敗したかに応じて、次の 2 つのいずれかが発生します。

正常に戻る場合:

  • スクリプトの以前に実行されたコンテンツがフラッシュされ、忘れ去られた
  • スクリプトの前の実行の結果として変更されたオブジェクト モデル操作または拡張ポイントは元に戻されます
  • スクリプトの新しい実行のオブジェクト モデル操作と拡張ポイントがアクティブである

失敗した戻り値の場合:

  • スクリプトの新しい実行が試行された操作または拡張ポイントは元に戻されます
  • スクリプトの以前の状態が復元されます。 オブジェクト モデルの操作と拡張ポイントがすべて復元されます。
  • 状態は、正常な Populate 呼び出しの後、実行呼び出しの前の状態である必要があります

適切に記述されたスクリプト プロバイダーとスクリプト環境では、Populate または Unlink 'の呼び出しを介入せずに Execute メソッドを複数回呼び出すことはべき等である必要があることに注意してください。 つまり、行の実行 N 回の呼び出しは、Execute を 1 回呼び出すのと同じようにユーザーに表示されます。 実行によって、デバッグ ターゲットの状態に副作用が生じないようにする必要があります。 その後、Execute メソッドを介して生成されたブリッジでプロパティ、メソッド、またはイベントを利用すると、実際に副作用の結果が生成される可能性があります。

構文

HRESULT Execute(
  IDataModelScriptClient *client
);

パラメーター

client

実行を要求するクライアントへのインターフェイスをここで渡す必要があります。 スクリプトの実行中にエラーやその他のイベントが発生した場合、クライアントには、このインターフェイスのメソッドを使用して、スクリプト内のエラーとその場所を通知する必要があります。

戻り値

このメソッドは、成功または失敗を示す HRESULT を返します。

必要条件

要件 価値
ヘッダー dbgmodel.h

関連項目

IDataModelScript インターフェイス の