Capturar o texto selecionado em outras janelas

Delphi

07/09/2005

Eu preciso capturar o texto selecionado em outras janelas ativas do Windows.

Sabe aquele programa que você passa o mouse sobre um campo senha e ele exibe o conteúdo da caixa de texto?
Pois eu preciso de um tipo esse. No entanto, eu preciso é capturar o texto selecionado na janela ativa.

O usuário, no Word ou no IE, por exemplo, seleciona uma palavra e aperta uma tecla (Ctrl+K) e o meu programa deve exibir uma janela com a palavra selecionada.

O que eu quis dizer sobre as mensagens é as mensagens do Windows (sendmessage).

Talvez usar a função HWin:= GetActiveWindow;


Segue a função que captura o conteúdo dos campos de senha quando se passa o mouse sobre ele:

procedure TForm1.Timer1Timer(Sender: TObject);
//Variável que irá receber a posição do cursor do mouse
var Pos: TPoint;
//Variável que irá receber a senha oculta
Paswd: array[0..63] of Char;
HWin :HWND;
begin
//Pega a posição do cursor na tela
GetCursorPos(Pos);
//Pega o Handle da Janela sobre a qual o cursor está localizado

HWin := WindowFromPoint(Pos);

if SendMessage(HWin, EM_GETPASSWORDCHAR, 0, 0) <> 0 then
//Verifica se há senha oculta
begin
//Descobre a senha oculta

SendMessage(HWin, WM_GETTEXT, 64, Longint(@Paswd));
//Mostra a senha no Editbox
edit1.Text:=Paswd;
end;


Zci

Zci

Curtidas 0

Respostas

Zci

Zci

07/09/2005

Pessoal, ninguém tem uma idéia?


GOSTEI 0
Zci

Zci

07/09/2005

Pessoal, ajudem por favor!


GOSTEI 0
Zci

Zci

07/09/2005

Gente, pelo amor de Deus!?!?!


GOSTEI 0
POSTAR