Enviar string para IExplorer

13/02/2006

Povo... me socorram...

Já tentei de tudo, PostMessage e afins e não consegui:

Meu problema é:
Tenho uma aplicação que chama uma página asp com dois edits nela, localizada em minha rede local... até aí OK.
O que eu preciso é após abrir esta página... colocá-la na frente da minha aplicação e inserir no primeiro edit o login e senha do usuário que está logado em meu sistema... ou seja, eu precisaria fazer:

1) abrir a página;
2) postar a string de login no edit (ao abrir a página ele já fica com o foco automatico);
3) emular um TAB;
4) postar a string de senha;
5) emular um ENTER;

O problema é que não estou conseguindo realizar esses passos... do 2º em diante !!!

Se alguém puder me ajudar... agradeço muuuuuuuuuuuito !!!!


Paulocesar1301

Respostas

13/02/2006

Paulocesar1301

Ah !!! Grande detalhe... todos os amigos sabem que o IExplorer pode ter seu caption configurado via programas (SpyBoot, por exemplo) ou via registro... por isso não consegui pegar o handle da janela... o Delphi não acha a bendita !!!


Responder Citar

13/02/2006

Ipc$

Vc pode acessar o Handle pela classe:
var hIE:THandle; Nome: array[0..255&93; of Char;
begin
  hIE := FindWindow(´IEFrame´, nil);
  if hIE > 0 then
    SendMessage(hIE, WM_GetText, 255, LParam(@Nome&91;0&93;)); // pega o caption do IE
end;



Responder Citar

14/02/2006

Paulocesar1301

Blz... já abro a janela e deixo-a na frente do meu sistema, porém ainda não fica ativa e ainda não consigo escrever nada no campo com foco


Responder Citar

14/02/2006

Massuda

Tenho uma aplicação que chama uma página asp com dois edits nela, localizada em minha rede local... até aí OK.
Essa aplicação em ASP foi desenvolvida por vocês? Se foi, seria mais simples implementar uma interface na aplicação ASP para o seu programa em Delphi, por exemplo, uma página especial em ASP que recebesse, via GET, os dados que você precisa passar e retornasse os dados que você precisa.

colocá-la na frente da minha aplicação e inserir no primeiro edit o login e senha do usuário que está logado em meu sistema...
Não entendi... se o objetivo é fazer isso automático, não precisa mostrar a página.

De qualquer forma, o jeito (que eu acho correto) de fazer seria usando um TWebBrowser (não sei como faz, mas pelo que li aqui no fórum, é possível) ou usando Indy, como discutido [url=http://forum.clubedelphi.net/viewtopic.php?t=55935]neste tópico[/url].


Responder Citar

14/02/2006

Truck1n

Opa, faz assim para mostrar o IE;

ShowWindow(handle,SW_SHOWMAXIMIZED);


blz ?

como editar não sei. foi como o massuda disse!
Essa aplicação em ASP foi desenvolvida por vocês? Se foi, seria mais simples implementar uma interface na aplicação ASP para o seu programa em Delphi, por exemplo, uma página especial em ASP que recebesse, via GET, os dados que você precisa passar e retornasse os dados que você precisa.


Abraços!


Responder Citar

14/02/2006

Paulocesar1301

A página não foi desenvolvida por nós.
Realmente não tinha pensado em usar o WebBrowser... ótima idéia... mas ainda continuo com o problema: Não consigo ´colar´ o texto no edit da página...

Consigo emular o TAB e o ENTER... mas não as letras ?


Responder Citar

14/02/2006

Ramms

A página não foi desenvolvida por nós. Realmente não tinha pensado em usar o WebBrowser... ótima idéia... mas ainda continuo com o problema: Não consigo ´colar´ o texto no edit da página... Consigo emular o TAB e o ENTER... mas não as letras ?



Essa página não passa as informações por variáveis na url? tipo
page.php?login=root&senha=root

algo do tipo?


Responder Citar

14/02/2006

Paulocesar1301

infelizmente não


Responder Citar

14/02/2006

Rjun

Se você está utilizando TWebBrowser veja esse [url=http://www.swissdelphicenter.ch/en/internet.php]site[/url].


Responder Citar

14/02/2006

Paulocesar1301

10...100...1000... BRIGADÃO !!! :D :D :D


Responder Citar