Estoy leyendo un Richbox de otra aplicación desde la mia, funciona perfecto hasta que intento obtener cada linea en un bucle, estoy seguro que es error mio en el bucle porque editando manualmente donde puse nbucle sale perfecto...
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.
Código [Seleccionar]
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.