Ik heb programma X. Programma X heeft een rich edit waarin gegevens worden weergegeven. Deze gegevens zou ik graag willen loggen vanuit een door mij geschreven programma.
Nu moet ik dus de tekst die de rich edit weergeeft zien af te vangen.
Ik heb het al geprobeerd met GetDlgItemText(), deze stuurt een WM_GETTEXT message. Dit werkt prima op een static in hetzelfde venster, maar zeker niet op de rich edit.
Daarna heb ik het geprobeerd met een EM_GETTEXTEX message, want hier staat beschreven dat je daarmee de text uit een rich edit haalt. Dat heb ik geprobeerd met de volgende code:
Ook dit werkte niet, want zodra ik deze code uitvoer herstart programma X
Is er nog een manier om de tekst uit die rich edit te krijgen, of is bovenstaande manier nog aan de praat te krijgen?
BTW Programma X is uiteraard niet door mij geschreven.
Nu moet ik dus de tekst die de rich edit weergeeft zien af te vangen.
Ik heb het al geprobeerd met GetDlgItemText(), deze stuurt een WM_GETTEXT message. Dit werkt prima op een static in hetzelfde venster, maar zeker niet op de rich edit.
Daarna heb ik het geprobeerd met een EM_GETTEXTEX message, want hier staat beschreven dat je daarmee de text uit een rich edit haalt. Dat heb ik geprobeerd met de volgende code:
C:
1
2
3
4
5
6
7
8
9
| char * text_buffer = (char *) malloc(10000 * sizeof(char)); GETTEXTEX settings; settings.cb = 10000 * sizeof(char); settings.flags = GT_DEFAULT; settings.codepage = CP_ACP; settings.lpDefaultChar = NULL; settings.lpUsedDefChar = NULL; int text_length = SendMessage((HWND)adres, (UINT) EM_GETTEXTEX, WPARAM)&settings,(LPARAM)text_buffer); // text_length == 0 :( |
Ook dit werkte niet, want zodra ik deze code uitvoer herstart programma X
Is er nog een manier om de tekst uit die rich edit te krijgen, of is bovenstaande manier nog aan de praat te krijgen?
BTW Programma X is uiteraard niet door mij geschreven.
Specialist in:
Soldeerstations
Oscilloscoop