C++ Example

CString CaptureFullText(const CPoint &pt1, const CPoint &pt2)
{
    CComPtr<IUIControl>    spUIC;
    CComBSTR        bstrVal;
    CString m_strResult;
    m_strResult.Empty();

    HRESULT hRes;

    hRes = spUIC.CoCreateInstance(CLSID_UIControl);
    if(hRes != S_OK)
    {
        return "";
    }
    hRes = spUIC->CreateFromScreenPoint(pt1.x, pt1.y);
    if(hRes != S_OK)
    {
        return "";
    }
    spUIC->get_Value(&bstrVal);
    if(bstrVal.m_str)
    {   
        m_strResult = bstrVal.m_str;
    }
    if(m_strResult.IsEmpty())
    {
        bstrVal = (BSTR)NULL;
        spUIC->get_Name(&bstrVal);
        if(bstrVal.m_str)
        {
            m_strResult = bstrVal.m_str;
        }
    }
    return m_strResult;
}
Comments