Ver Mensaje Individual
  #1  
Antiguo 19-03-2004
Avatar de sitrico
[sitrico] sitrico is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 295
Reputación: 22
sitrico Va por buen camino
Leer el formato del evento post de un navegador

Estoy usando TIdHTTP.Post para simular el envío de los campos de un formulario a una pagina web (buscador.php) pero tengo problemas usando el código:

Código:
var
 aStream: TMemoryStream;
 Params: TStringStream;
begin
 aStream := TMemoryStream.create;
 Params := TStringStream.create('');
 try
   with IdHTTP1 do
   begin
     Params.WriteString('111111111');
     try
       Post('/php/buscador.php', Params, aStream);
     except
       on E: Exception do
         showmessage('Error encountered during POST: ' + E.Message);
     end;
   end;
   aStream.WriteBuffer(#0' ', 1);
   aStream.Position := 0;
   EmbeddedWB1.LoadFromStream(aStream);
 except
 end;
end;
El problema es especificamente:

Código:
     Params.WriteString('111111111');
Porque no se la sintaxis del parametro que debo suministrar.

La Pregunta es saber si existe alguna manera de interceptar el evento que ocurre al hacer click en el boton de "Enviar" (en un TWebBrowser) para ver y analizar la sintaxis del mensaje enviado.

He intentado con el evento:

Código:
procedure TForm1.EmbeddedWB1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);

begin
Memo1.Lines.Add('-------------------------');
Memo1.Lines.Add('URL:'+String(URL));
Memo1.Lines.Add('Flags:'+String(Flags));
Memo1.Lines.Add('TargetFrameName:'+String(TargetFrameName));
Memo1.Lines.Add('PostData:'+String(PostData));
Memo1.Lines.Add('Headres:'+String(Headers));
end;
Nota EmbeddedWB1 es una clase mejorada (mucho) del TWebBroser

Pero la conversión de un tOleVariant en un String no produce muy buenos resultados.

Gracias de antemano.
__________________
Sitrico

Última edición por sitrico fecha: 19-03-2004 a las 22:43:43.
Responder Con Cita