CAsyncMonikerFile::OnDataAvailable
Un moniker asincrónico llama a OnDataAvailable para proporcionar datos al cliente como disponible, durante las operaciones asincrónicas de enlace.
virtual void OnDataAvailable(
DWORD dwSize,
DWORD bscfFlag
);
Parámetros
dwSize
La cantidad acumulativa (en bytes) de datos disponibles desde el inicio del enlace.Puede ser cero, que indica que la cantidad de datos no es relevante para la operación, o que ninguna cantidad concreto estaba disponible.bscfFlag
Un valor de enumeración de BSCF .Pueden ser uno o más de los siguientes valores:BSCF_FIRSTDATANOTIFICATION Identifica la primera llamada a OnDataAvailable para una operación determinada de enlace.
BSCF_INTERMEDIATEDATANOTIFICATION Identifica una llamada intermediaria a OnDataAvailable para una operación de enlace.
BSCF_LASTDATANOTIFICATION Identifica la última llamada a OnDataAvailable para una operación de enlace.
Comentarios
La implementación predeterminada de esta función no hace nada.Vea el ejemplo siguiente para una aplicación de ejemplo.
Ejemplo
void CMyMoniker::OnDataAvailable(DWORD dwSize, DWORD bscfFlag)
{
if ((bscfFlag & BSCF_FIRSTDATANOTIFICATION) != 0)
{
m_dwReadBefore = 0;
m_strText.Empty();
}
DWORD dwArriving = dwSize - m_dwReadBefore;
if (dwArriving > 0)
{
int nLen = m_strText.GetLength();
ASSERT((DWORD)nLen == m_dwReadBefore);
LPTSTR psz = m_strText.GetBuffer(nLen + dwArriving);
Read(psz + nLen, dwArriving);
m_strText.ReleaseBuffer(nLen + dwArriving);
m_dwReadBefore = dwSize;
}
}
Requisitos
encabezado: afxole.h