Ir al contenido


Foto

Cómo abro la ayuda en web, sin trabar lazarus o como ejecuto un proceso en hilo


  • Por favor identifícate para responder
5 respuestas en este tema

#1 martinartaza

martinartaza

    Advanced Member

  • Miembros
  • PipPipPip
  • 159 mensajes
  • LocationArgentina, Tucuman

Escrito 17 agosto 2011 - 08:27

Hola querida comunidad, le comento el titulo está cortado porque no sabia como abreviarlo, quise poner lo siguiente:
"Cómo abro la ayuda ejecutando el firefox en una pagina web sin trabar lazarus o como ejecuto un proceso que llama a firefox en un hilo aparte del principal"

Le comento en el programa que estoy haciendo, quiero que cuando aprieten en el menu donde dice ayuda abra el firefox con la pagina web de ayuda y resulta que todo va de 10, pero se abre la pagina y el programa queda trabado hasta que cierro el firefox, y yo deseo que el programa siga ejecutándose de lo más normal.

No implemente nunca hilos y quería pedirle sin no es mucha molestia una ayuda, que me recomienda para ejecutar un proceso en un hilo aparte.

Ahora me voy a poner a probar, espero que no me lleve mucho tiempo, si doy con la respuesta la posteo acá si no la postee es que estoy enrredado.

el código que uso para abrir el firefox es el siguiente.



delphi
  1. procedure Tfzvac.MMostrarAyudaClick(Sender: TObject);
  2. var Proc : TProcess;
  3. dir: string;
  4.  
  5. begin
  6.   dir:= ExtractFilePath(Application.ExeName);
  7.   Proc := TProcess.Create(nil);
  8. /////ya se que debo usar directorio relativo, ya lo are.
  9.   Proc.CommandLine := 'firefox "file:///home/martin/Programacion/Lazarus/tercera%20iteracion/Menu%20completo/ayuda/index.html"';
  10.   Proc.Options := Proc.Options + [poWaitOnExit, poUsePipes];
  11.   PRoc.Execute;
  12.   Proc.free;
  13. end;



Si leen esto y no puse la solución me dan una mano, desde ya muchas gracias.
  • 0

#2 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 17 agosto 2011 - 09:19

Hola amigo, checa esto a ver si te ayuda en algo, está en inglés.

http://www.lazarus.f...hp?topic=5982.0

Salud OS
  • 0

#3 Héctor Randolph

Héctor Randolph

    501st Legion

  • Moderadores
  • PipPipPip
  • 664 mensajes
  • LocationMéxico

Escrito 17 agosto 2011 - 10:05

Hola martinartaza

También podría servirte este hilo

http://www.delphiacc...nes-en-lazarus/

Saludos

  • 0

#4 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 18 agosto 2011 - 12:15

Independientemente de como termines realizando tu ayuda, el problema de tu código es la línea:


delphi
  1. Proc.Options := Proc.Options + [poWaitOnExit, poUsePipes];


Ella obliga a esperar a que termine el proceso que abres. Coméntala.



delphi
  1. procedure Tfzvac.MMostrarAyudaClick(Sender: TObject);
  2. var Proc : TProcess;
  3. dir: string;
  4.  
  5. begin
  6.   dir:= ExtractFilePath(Application.ExeName);
  7.   Proc := TProcess.Create(nil);
  8. /////ya se que debo usar directorio relativo, ya lo are.
  9.   Proc.CommandLine := 'firefox "file:///home/martin/Programacion/Lazarus/tercera%20iteracion/Menu%20completo/ayuda/index.html"';
  10. //  Proc.Options := Proc.Options + [poWaitOnExit, poUsePipes];
  11.   PRoc.Execute;
  12.   Proc.free;
  13. end;



Piensa que es posible que además tengas que dar la ruta completa de la aplicación que quieres abrir.

Saludos.
  • 0

#5 martinartaza

martinartaza

    Advanced Member

  • Miembros
  • PipPipPip
  • 159 mensajes
  • LocationArgentina, Tucuman

Escrito 18 agosto 2011 - 07:42

Muchisimas gracias a todos, hoy cuando termine de trabajar y llegue a mi casa chequeo todos, desde ya muchas gracias.

  • 0

#6 martinartaza

martinartaza

    Advanced Member

  • Miembros
  • PipPipPip
  • 159 mensajes
  • LocationArgentina, Tucuman

Escrito 18 agosto 2011 - 05:11

Muchas gracias escafandra y era como tu decías, comentando esa linea ya está, logro abrir el firefox sin trabar el programa creado.

Por otro lado, Héctor Randolph te pasaste, te fuiste al .... con ese tutorial, sos groso sabelo. Ahora me pongo a seguirlo al pie de la letra, lo lei de pasada en el descanso en el trabajo y parece buenisimo, ahora en mi casa me pongo hacer lo que pusiste ahí.

Que linda que es está comunidad, gracias a todos.

  • 0




IP.Board spam blocked by CleanTalk.