IDataModelScript::Execute 方法 (dbgmodel.h)
Execute 方法會執行腳本的內容,如上一次成功的 Populate 呼叫所決定,並根據該內容修改調試程序的物件模型。 如果語言(或腳本提供者)定義「主要函式」,則作者想要在使用者介面中按兩下虛構的「執行腳本」按鈕時呼叫該函式,則不會在「執行」作業期間呼叫這類「主要函式」。 「執行」作業可以視為只執行初始化和物件模型操作(例如:執行根程式代碼並設定擴充點)。 執行腳本是腳本提供者與腳本客戶端之間的雙向通訊。 錯誤、偵錯控件和其他語意會跨 IDataModelScript 與 IDataModelScriptClient之間的通道傳遞。
視執行作業成功或失敗而定,應該會發生下列兩件事之一:
成功傳回:
- 先前執行的腳本內容已排清並被遺忘
- 由於先前執行腳本而變更的任何物件模型操作或擴充點,會復原
- 新執行腳本的物件模型操作和擴充點為使用中
針對失敗的傳回:
- 取消復原腳本新嘗試執行的任何操作或擴充點
- 會還原腳本的先前狀態。 其所有物件模型操作和擴充點都會還原。
- 狀態應該是在成功填入呼叫之後,但在任何 Execute 呼叫之前的狀態
請注意,對於正確撰寫的腳本提供者和腳本環境,請多次呼叫 Execute 方法,而不需對 Populate 或 Unlink 的介入呼叫 '應該是等冪的。 也就是說,在數據列中呼叫Execute N次應該會顯示給使用者,與呼叫Execute一次相同。 執行不應該對偵錯目標的狀態產生副作用結果。 後續利用透過 Execute 方法產生的網橋上的屬性、方法或事件,確實可能會產生副作用結果。
語法
HRESULT Execute(
IDataModelScriptClient *client
);
參數
client
要求執行之用戶端的介面應該在此傳遞。 如果在腳本執行期間發生錯誤或其他事件,客戶端應該透過這個介面上的方法,通知這些事件及其在腳本中的位置。
傳回值
此方法會傳回表示成功或失敗的 HRESULT。
要求
要求 | 價值 |
---|---|
標頭 | dbgmodel.h |