Aracılığıyla paylaş


IDebugEngine2::CreatePendingBreakpoint

Hata ayıklama altyapısında (DE) bekleyen bir kesme noktası oluşturur.

Sözdizimi

int CreatePendingBreakpoint(
    IDebugBreakpointRequest2     pBPRequest,
    out IDebugPendingBreakpoint2 ppPendingBP
);

Parametreler

pBPRequest
[in] Oluşturulacak bekleyen kesme noktasını açıklayan bir IDebugBreakpointRequest2 nesnesi.

ppPendingBP
[out] Bekleyen kesme noktasını temsil eden bir IDebugPendingBreakpoint2 nesnesi döndürür.

İade Değeri

Başarılı olursa döndürür S_OK; aksi takdirde bir hata kodu döndürür. Parametrenin geçersiz veya eksik olması durumunda pBPRequest genellikle parametresinin DE tarafından desteklenen herhangi bir dille eşleşmemesi durumunda pBPRequest döndürürE_FAIL.

Açıklamalar

Bekleyen kesme noktası temelde bir kesme noktasını koda bağlamak için gereken tüm bilgilerin bir koleksiyonudur. Bu yöntemden döndürülen bekleyen kesme noktası, Bağlama yöntemi çağrılana kadar koda bağlı değildir.

Kullanıcının ayarlandığı her bekleyen kesme noktası için oturum hata ayıklama yöneticisi (SDM), eklenen her DE'de bu yöntemi çağırır. Kesme noktasının bu DE'de çalışan programlar için geçerli olduğunu doğrulamak DE'ye bağlıdır.

Kullanıcı bir kod satırında kesme noktası ayarladığında, DE kesme noktasını belgede bu koda karşılık gelen en yakın satıra bağlayabilir. Bu, kullanıcının çok satırlı bir deyimin ilk satırında kesme noktası ayarlamasını, ancak son satıra bağlamasını mümkün kılar (burada tüm kod hata ayıklama bilgilerinde ilişkilendirilir).

Örnek

Aşağıdaki örnekte, basit CProgram bir nesne için bu yöntemin nasıl uygulandığı gösterilmektedir. DE'nin uygulaması IDebugEngine2::CreatePendingBreakpoint daha sonra tüm çağrıları her programda yönteminin bu uygulamasına iletebilir.

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);
}

Ayrıca bkz.