共用方式為


IDebugEngine2::CreatePendingBreakpoint

在偵錯引擎中建立擱置中的斷點 (DE)。

語法

int CreatePendingBreakpoint(
    IDebugBreakpointRequest2     pBPRequest,
    out IDebugPendingBreakpoint2 ppPendingBP
);

參數

pBPRequest
[in]描述 要建立之暫止斷點的 IDebugBreakpointRequest2 物件。

ppPendingBP
[out]會傳 回代表暫止斷點的 IDebugPendingBreakpoint2 物件。

傳回值

如果成功,則會傳回 S_OK;否則,會傳回錯誤碼。 如果 pBPRequest 參數無效或不完整,通常會傳E_FAIL回 參數不符合 DE pBPRequest 所支援的任何語言。

備註

暫止斷點基本上是將斷點系結至程序代碼所需的所有資訊集合。 在呼叫 Bind 方法之前,從這個方法傳回的暫止斷點不會系結至程序代碼。

針對用戶設定的每個暫止斷點,會話偵錯管理員 (SDM) 會在每個附加 DE 中呼叫這個方法。 由 DE 決定斷點是否對在該 DE 中執行的程式有效。

當使用者在程式代碼行上設定斷點時,DE 可以自由地將斷點系結至對應至此程式代碼之檔中最接近的行。 這可讓使用者在多行語句的第一行上設定斷點,但在最後一行系結它(其中所有程序代碼都是在偵錯資訊中屬性)。

範例

下列範例示範如何為簡單 CProgram 物件實作這個方法。 DE 的實作 IDebugEngine2::CreatePendingBreakpoint 接著可以將所有呼叫轉送至每個程式中方法的這個實作。

HRESULT CProgram::CreatePendingBreakpoint(IDebugBreakpointRequest2* pBPRequest, IDebugPendingBreakpoint2** ppPendingBP)
{
    // Create and initialize the CPendingBreakpoint object.
    CComObject<CPendingBreakpoint> *pPending;
    CComObject<CPendingBreakpoint>::CreateInstance(&pPending);
    pPending->Initialize(pBPRequest, m_pInterp, m_pCallback, m_pEngine);
    return pPending->QueryInterface(ppPendingBP);
}

另請參閱