Club Delphi  
    FTP   CCD     Enlaces   Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Desplegado
  #1  
Antiguo 27-02-2011
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 86
FENIXadr Va por buen camino
Averiguar que pagina se está Navegando

Hola gente aquí estoy nuevamente preguntando algo.. como lo indica el nombre del hilo es justamente eso lo que quiero hacer.. "Averiguar que pagina se está Navegando", ya se que hay soft por ahi que controlan las paginas por donde uno anda permitiendo o no el acceso .. pero me gustaría hacer una aplicación similar en delphi.. alguien sabe entonces como averiguo la página en la que está algún navegador?

desde ya muchas gracias..
Responder Con Cita
  #2  
Antiguo 02-03-2011
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Zona Libre de Madrid, Reino de Dick
Posts: 4.824
Ñuño Martínez Va por buen camino
Como mucho podrás hacer un "sniffer" y, si detecta HTML, analizarlo. Pero yo de redes, poco, y a bajo nivel, menos.
__________________
Proyectos actuales ----> Nuevo proyecto: http://www.burdjia.com/
Entorno de desarrollo ----> Materia gris.
Responder Con Cita
  #3  
Antiguo 02-03-2011
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Moderador
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.645
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por FENIXadr Ver Mensaje
"Averiguar que pagina se está Navegando", ya se que hay soft por ahi que controlan las paginas por donde uno anda permitiendo o no el acceso .. pero me gustaría hacer una aplicación similar en delphi..
...
Bueno si lo que pretendes es bloquear algunas páginas específica, pues existen muchas formas, aunque yo solo he usado una y no me he metido más a fondo , lógicamente, como has mencionado tú, existen mucho software que ya hacen ese trabajo.
Entre las alternativas que conosco:
*Si en tu red se ésta usando un servidor proxy pues entonces debes configurar esa Máquina que hace de servidor Proxy para filtrar las páginas de interes.
*Si se ésta usando un router tambien se lo puede configurar para que no se accedan a algunas páginas en cuestion.
*Tambien podemos hacer uso del Archivo "Host" del Sistema Operativo para bloquear el acceso a páginas,(en realidad yo personalmente he utilizado éste método aunque no es 100% efectivo pero vale)
*Etc...
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #4  
Antiguo 03-03-2011
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 86
FENIXadr Va por buen camino
Muchas gracias por las respuestas... con respecto a lo del router y el poxy, está bien.. pero como amante de la programacion, quisiera hacerlo en delphi.... y con respecto a lo del "sniffer"... perdón por mi ignorancia.. pero que es y como se hace??

desde ya muchas gracias..
Responder Con Cita
  #5  
Antiguo 03-03-2011
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Zona Libre de Madrid, Reino de Dick
Posts: 4.824
Ñuño Martínez Va por buen camino
Un "sniffer" (traducido "olfateador") es un programa que hace un seguimiento a todo el tráfico de red. En principio los sniffer se limitan a generar una bitácora con la información (quién, qué, cuándo y dónde), pero con alguna modificación puede hacer más cosas como filtrar (en este caso no se le llama sniffer sino cortafuegos [firewall]).

El "cómo se hace" ya es más complicado. Lo que hay que hacer es interceptar el flujo de red de forma que este "pase a través" del sniffer antes de ser enviado o recibido. Concretamente no puedo decirte el cómo, pero quizá haya algún "hook".
__________________
Proyectos actuales ----> Nuevo proyecto: http://www.burdjia.com/
Entorno de desarrollo ----> Materia gris.
Responder Con Cita
  #6  
Antiguo 04-03-2011
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 86
FENIXadr Va por buen camino
Si si ... estuve viendo el tema del "sniffer", y encontré este link que tal vez le sea de utilidad a alguien.... http://www.felix-colibri.com/papers/...p_sniffer.html explica una cuantas cositas..
Además hay un foro que se llama "INDETECTABLES" en donde pude bajar unos códigos fuentes en delphi de un sniffer, este es el link http://indetectables.net/foro/viewto...165&view=print para bajarlo hay que hacer click en las letras rojas que dicen "<< [ Debe registrarse para ver este enlace ]", pero para mi sorpresa cuando me fui a registrar me dijo que ya estaba reguistrado y entré con el mismo nombre de usuario de este foro ... (Acaso "INDETECTABLES" es un anexo de "Club Delphi".. no lo se.)... bueno entonces como les decia, para bajarlo hay que hacer click en las letras rojas que dicen "<< [ Debe registrarse para ver este enlace ]", y despues vamos a la opción "Identificarse" que esta debajo del logo de "INDETECTABLES.net"..

Volviendo al tema de este hilo... "Averiguar que pagina se está Navegando", no se si esta es la respuesta correcta... pero voy a ver si puedo hacer algo.. si alguien sabe otra forma .. aqui estamos..

muchas gracias,..
Responder Con Cita
  #7  
Antiguo 07-03-2011
razonasistemas razonasistemas is offline
Registrado
 
Registrado: feb 2011
Ubicación: Oviedo, España
Posts: 5
razonasistemas Va por buen camino
Esto vale solo para algunos navegadores

Hola:

Este codigo vale solo para algunos navegadores :

Código Delphi [-]
uses ddeMan;

procedure TForm1.GetCurrentURL (var URL, Title : string);
 var
   DDEClient : TDDEClientConv;
   s : string;
 begin
   s := '';
   try
     DDEClient := TDDEClientConv.Create(self);
     with DDEClient do
     begin
       if SetLink('IExplore','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Netscape','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Mosaic','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Netscp6','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Mozilla','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Firefox','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle');
     end;
     if s <> '' then
     begin
       delete(s,1,1);
       URL := copy(s,1,pos('","',s)-1);
       delete(s,1,pos('","',s)+2);
       Title := copy(s,1,pos('"',s) - 1);
     end;
     exit;
   except
     MessageDlg('URL attempt failed!',mtError,[mbOK],0);
   end;
 end;


procedure TForm1.Button1Click(Sender: TObject);
var
 URL : string;
   Title : string;
 begin
   GetCurrentURL (URL, Title);
   Edit1.Text := URL;
   Edit2.Text := Title;
 end;

Yo lo he intentado, pero no me funciona con el Chrome, pero si con el IE.
Responder Con Cita
  #8  
Antiguo 08-03-2011
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 86
FENIXadr Va por buen camino
Thumbs up

SIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII....... razonasistemas sos un genioooooo... es justamente lo que necesitaba... muchísimas graciass...

Este hilo se puede dar por terminado...

Una vez más muchisisisisisimas gracias razonasistemas..
Responder Con Cita
  #9  
Antiguo 09-03-2011
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Moderador
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.645
rgstuamigo Va por buen camino
Arrow

Cita:
Empezado por razonasistemas Ver Mensaje
Hola:

Este codigo vale solo para algunos navegadores :

Código Delphi [-]
uses ddeMan;

procedure TForm1.GetCurrentURL (var URL, Title : string);
 var
   DDEClient : TDDEClientConv;
   s : string;
 begin
   s := '';
   try
     DDEClient := TDDEClientConv.Create(self);
     with DDEClient do
     begin
       if SetLink('IExplore','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Netscape','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Mosaic','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Netscp6','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Mozilla','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle')
       else
       if SetLink('Firefox','WWW_GetWindowInfo') then
         s := RequestData('0xFFFFFFFF,sURL,sTitle');
     end;
     if s <> '' then
     begin
       delete(s,1,1);
       URL := copy(s,1,pos('","',s)-1);
       delete(s,1,pos('","',s)+2);
       Title := copy(s,1,pos('"',s) - 1);
     end;
     exit;
   except
     MessageDlg('URL attempt failed!',mtError,[mbOK],0);
   end;
 end;


procedure TForm1.Button1Click(Sender: TObject);
var
 URL : string;
   Title : string;
 begin
   GetCurrentURL (URL, Title);
   Edit1.Text := URL;
   Edit2.Text := Title;
 end;

Yo lo he intentado, pero no me funciona con el Chrome, pero si con el IE.
Muy interresante código amigo razonasistemas... nada más que al ejecutar varias veces el procedimiento "GetCurrentURL" estamos haciendo mal uso de la memoria, ya que el objeto "DDEClient" no se está liberando por lo cual deberiamos agregar una linea más para que tal objeto se destruya y libere su memoria que ocupa...
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #10  
Antiguo 09-03-2011
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 86
FENIXadr Va por buen camino
SI SI... muy buen aporte rgstuamigo... se puede hacer de muchas maneras.... en mi caso creo DDEClient en el evento "OnCreate" del Form y lo destruyo en el evento "OnClose".. solo por hacerlo una vez y no cada vez que se llama a "GetCurrentURL".
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como averiguar si una unit o datamodule ya está abierto jjoliveras OOP 2 20-06-2007 12:28:56
Averiguar si está instalado WINZIP en un PC Jose Manuel Varios 4 07-11-2006 13:54:40
¿Cómo puedo averiguar las URLs por las que está navegando el usuario? marceloalegre Varios 8 11-08-2006 16:56:20
Como averiguar que ventana de windows esta activa? JuanErasmo API de Windows 5 17-04-2006 22:47:40
Averiguar si la combinación de dos campos está en uso DarkByte Conexión con bases de datos 18 28-09-2004 17:59:04


La franja horaria es GMT +2. Ahora son las 19:18:24.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi