Последний аргумент GetWindowText()
- это размер вашего буфера. Поскольку вы устанавливаете длину строки, вы говорите функции, что ваш буфер слишком мал, потому что нет места для нулевого терминатора. И ничего не копируется.
Кроме того, вы уже должны выделить буфер для хранения копии текста. На что указывает edittxt
? Я даже не вижу, где вы его инициализируете.
Правильное использование будет выглядеть примерно так:
TCHAR buff[1024];
GetWindowText(hWndCtrl, buff, 1024);