Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Enlaces a pagina web con IE7 (https://www.clubdelphi.com/foros/showthread.php?t=39994)

jorgegetafe 05-02-2007 00:40:40

Enlaces a pagina web con IE7
 
Saludos, quiero hacer en mi programa unos accesos directos a paginas web, tengo internet explorer 7 y no me funciona ninguno de estos procedimientos en mi form pongo:


uses UrlMon

procedure TForm1.Button1Click(Sender: TObject);
begin
HlinkNavigateString(Nil,'http://www.google.es/');
end;


Y tambien el otro, que es el que yo he usado cuando me ha hecho falta:

Con uses ShellApi:

procedure TForm1.Button2Click(Sender: TObject);
begin
ShellExecute(Form1.Handle,nil,PChar('http://www.google.es/'),'','',SW_SHOWNORMAL);
end;

El error que me aparece es: "[Error] Unit1.pas(735): Statement expected, but expression of type 'HRESULT' found" )

Creo que es por una inconpatibilidad con IE7, ¿alguien sabe como hacerlo de otra forma?

¿o me tengo que aguantar y no puedo poner enlaces a paginas de internet?

muchas gracias.

Neftali [Germán.Estévez] 05-02-2007 11:26:59

No creo que sea eso. Es más, el error que dices parace que te da en compilación, por lo tanto ni siquiera "ha entrado" en escena el Explorer.

Ambas líneas funcionan perfectamente en XP+IE7 (compilado con Delphi 6).

jorgegetafe 05-02-2007 16:26:26

Cita:

Empezado por Neftali
No creo que sea eso. Es más, el error que dices parace que te da en compilación, por lo tanto ni siquiera "ha entrado" en escena el Explorer.
Ambas líneas funcionan perfectamente en XP+IE7 (compilado con Delphi 6).

Wueno y que hago? como veras esta todo bien escrito, he añadido sus unidades correspondientes y nada.

¿Alguna idea?

gracias.

Neftali [Germán.Estévez] 05-02-2007 16:41:36

Exactamente qué línea es la que te está dando error.
¿Tienes componentes o librerías externas que estés utilizando en ese programa?

A veces me ha pasado que una línea que estaba bien, me estaba dando errores de compilación y era debido a que en otra unit había otra función con el mismo nombre y otro tipo de parámetros.

Sabiendo la línea que da el error, para asegurarte, puedes hacer las llamadas a las funciones añadiendo delante la unit a la que pertenecen, para evitar confusiones...

Código Delphi [-]
  // por ejemplo...
  URLMon.HlinkNavigateString(Nil,'http://www.google.es/');

Ñuño Martínez 05-02-2007 16:45:43

Creo que lo tengo. Prueba esto a ver:
Código Delphi [-]
procedure TForm1.Button2Click(Sender: TObject); 
VAR
  Foo: HINSTANCE;
begin 
  Foo := ShellExecute(Form1.Handle,nil,PChar('http://www.google.es/'),'','',SW_SHOWNORMAL); 
end;
Ten en cuenta que lo he pueso de memoria y no he comprobado nada, pero me ha llegado la inspiración.


La franja horaria es GMT +2. Ahora son las 15:29:47.

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