Кто-нибудь сталкивался с подобным? По нажатию кнопки выполняется следующее:
HWND AuthWin = NULL; //окно
AuthWin = FindWindow(NULL, "Пользователь"); //ищем окно
if(AuthWin == NULL) return; //если окно не найдено прерываем метод
HWND Password = NULL; //поле пароля
Password = FindWindowEx(AuthWin, NULL, "Edit", NULL); //ищем поле пароля
AnsiString s;
int len = SendMessage(Password, WM_GETTEXTLENGTH, 0, 0);
s.SetLength(len);
SendMessage(Password, WM_GETTEXT, len+1, (LPARAM)s.c_str());
Label1->Caption = s;
Программа находит "чужое" окно и его поле ввода, правильно определяет количество введенных символов, но вот сами символы из поля ввода извлечь не может. Переменная s всегда пустая. Скажите, что не так?