Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-09-2006
pcicom pcicom is offline
Miembro
 
Registrado: may 2003
Ubicación: MONTERREY MEXICO
Posts: 253
Poder: 21
pcicom Va por buen camino
Como evitar 2 instancias de mi programa(Linux)

Estoy desarrollando un APP en LINUX con freepascal y necesito evitar la ejecucion de mi programa en mas de una instancia...

es decir que solo se pueda ajecutar una vez y la siguiente no se ejecute...

si alguien conoce una rutina y/o la forma de como hacerlo, agradecere me expliquen que funciones utilizar...
__________________
Poco ha de saber el que no pregunta.. Yo por eso soy un pregunton

Última edición por pcicom fecha: 01-10-2006 a las 23:48:44.
Responder Con Cita
  #2  
Antiguo 01-10-2006
Avatar de Pascalizado
Pascalizado Pascalizado is offline
Miembro
 
Registrado: abr 2006
Ubicación: Buenos Aires, Argentina
Posts: 163
Poder: 19
Pascalizado Va por buen camino
Cuando se inicia una instancia que guarde un archivo temporal por ejemplo en el directorio "/ tmp", con el numero de PID del proceso dentro de este archivo, entonces cuando ejecutas la segunda instancia esta debe verificar que el archivo exista y que el numero PID que este almaceno este activo si esto es afirmativo el programa se cerrara. Puedes utilizar el componente Tprocess para facilitarte la obtencion del PID y demas.

Aunque tiene una contra: si el programa se cuelga no borrara el archivo al salir y si al ejecutarlo devuelta puede que el PID que esta almacenado en el archivo este activo debido a que lo tiene otro proceso.

Bueno espero haberme explicado bien y que te haya servido. Saludos
__________________
Pascalizado
-----------------------------
"Ser una pluma y por el viento dejarse llevar hasta donde nunca nadie pudo llegar..."
Responder Con Cita
  #3  
Antiguo 01-10-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Hola, tambien puedes revisar este truco,

o éste hilo

o un poco de todo, de lo que aparece en el buscador del clubdelphi, y te haces una idea aproximada de las alternativas y elijes la que mejor te convenga.

Saludos
Responder Con Cita
  #4  
Antiguo 03-10-2006
Avatar de Pascalizado
Pascalizado Pascalizado is offline
Miembro
 
Registrado: abr 2006
Ubicación: Buenos Aires, Argentina
Posts: 163
Poder: 19
Pascalizado Va por buen camino
Hola devuelta, otra que recien se me ocurre es: con el componte TProccess tiras la instruccion PS grep | <Nombre_programa> y te lista todos los procesos con esos nombre y si aparecen mas de dos cierras el programa.

Saludos
__________________
Pascalizado
-----------------------------
"Ser una pluma y por el viento dejarse llevar hasta donde nunca nadie pudo llegar..."
Responder Con Cita
Respuesta



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
evitar doble ejecucion en el programa... uper Varios 9 28-03-2017 19:36:02
evitar colgado de programa vivamotos C++ Builder 3 12-02-2007 17:16:59
Como evitar 2 instancias de una misma ventana hija edgusano .NET 5 12-12-2005 16:40:40
Evitar múltiples instancias de un mismo form Neomanar OOP 1 09-09-2005 17:10:26
Evitar Instancias Multiples De Mi Aplicacion edgusano .NET 8 28-04-2005 19:21:02


La franja horaria es GMT +2. Ahora son las 13:20:50.


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
Copyright 1996-2007 Club Delphi