Código:
DWORD dwlineas = SendMessage(hListWnd,EM_GETLINECOUNT,0,0); // Obtengo la cantidad de lineas del RichTextBox
int nbucle=0; // marco el 0 en el bucle
while(nbucle<=dwlineas){ // lo inicio
DWORD dwCount = SendMessage(hListWnd,EM_LINELENGTH,0,0); // obtengo el largo de la linea
if(dwCount){ // si todo esta correcto
char* lpBuff = new char[dwCount+1]; // creo que es un puntero con el largo de la linea +1
if(!lpBuff){ // si no hay buffer, error
MessageBox(NULL,"Error with memory!",NULL,MB_OK);
return 1;
}
if(LB_ERR != SendMessage(hListWnd,EM_GETLINE,nbucle,(LPARAM)lpBuff)){ // si no hay error, obtengo la linea, nbucle es la linea que quiero
cout<< "Bucle: " << nbucle << endl; // me da el número de bucle
cout << lpBuff << endl; // imprime la linea
}
delete [] lpBuff; // borro el puntero del buffer
}
//
nbucle++; // sumo uno al bucle
Sleep(2000); // espero 2 segundos
}
El código funciona sólo con la primer linea, si quito el while y pongo que me de otras lineas funciona perfectamente, dentro del bucle no obtiene más que la primera, a ver si alguien me puede ayudar.