Сделай сам: "Вскрывалка паролей"
17.12.2007 от Иван Ширко//перерисовываем окно
InvalidateRect(h, nil, true);
end;
Процедура обработки нажатия на кнопку "Показать пароль в отдельном окне":
procedure TForm1.Button3Click(Sender: TObject);
begin
//узнаём координаты курсора мыши
getcursorpos(p);
//получаем идентификатор окна, находящегося под курсором мыши
h:=windowfrompoint(p);
//получаем текст окна
s:=gettext(h);
//если текст не является пустой строкой, то показываем его пользователю
if s<>'' then
begin
setforegroundwindow(form1.handle);
showmessage(s);
end;
end;
С помощью данной процедуры (работает она только в Win9x) можно узнать не только пароль, скрытый под "звёздочками", но и текст практически любого стандартного элемента управления Windows: поля ввода, кнопки, флажка (checkbox) и др. Напомню, что текст копируется в буфер обмена, работа с которым будет рассмотрена в одной из следующих статей.
В принципе программа уже готова к эксплуатации. Но для удобства пользователя сделаем, как и собирались, поддержку "горячих клавиш". Для этого мы воспользуемся функцией
RegisterHotKey(
HWND hWnd, // этому окну придёт уведомление о нажатии
комбинации клавиш
Рубрики: Delphi, Сделай сам |
03.03.2008 в 09:00
[…] На первый вопрос я уже дал частичный ответ в статье Сделай сам: “Вскрывалка паролей”, но нам нужно копнуть немного глубже, а второй вопрос […]