UniqueInstance/es

From Lazarus wiki
Jump to: navigation, search

Deutsch (de) English (en) español (es) français (fr)

Acerca de

UniqueInstance proporciona una forma fácil de permitir solamente una única instancia de su programa.

características

  • Fácil de usar: simplemente coloque el componente en el formulario principal.
  • Proporciona un mecanismo para recibir la línea de comandos de las otras instancias.

Como se usa (Componente)

Sólo tiene que colocarlo en el formulario principal de su aplicación LCL (en la pestaña Sistema, busque un círculo rojo con el dígito "1" en el centro).

Propiedades:

  • Enabled: activa/desactiva el componente
  • Identifier: usado para identificar la aplicación
  • UpdateInterval: el intervalo en milisegundos que el componente lee los mensajes de nuevas instancias. Tiene sentido sólo en Unix, ya que, en win32, el mensaje se recibe a través del bucle de mensajes de windows.

Eventos:

  • OnOtherInstance: llamado cuando se inicia otra instancia. Recibe los parámetros pasados a esa instancia.

Como se usa (Fuentes)

Agregue la unidad uniqueinstanceraw a su sección uses.

Llame a la función InstanceRunning: devolverá true si ya hay una instancia en ejecución.

Hay dos variantes:

  • Sin argumentos: se utiliza el nombre del ejecutable como identificador y no se enviará el parámetros de línea de comandos
  • Con dos argumentos:
    • Identifier: el identificador de la aplicación
    • SendParameters (defecto = false): envia los parámetros de línea de comando a la instancia en ejecución, si la hay, antes de cerrarse.

Comentarios

  • Probado con win32 (XP SP2) y Linux (Ubuntu Feisty).
  • La versión 0.2 requiere FPC 2.2.0
  • Si pone dos componentes TUniqueInstance en la misma aplicación, con el mismo identificador de aplicación, no se cargará.
  • El identificador es opcional tanto para la función como para el componente. En caso de que no los utilice, el nombre del ejecutable se utiliza como identificador. La consecuencia es que, si alguien cambia el nombre del ejecutable, no será identificado.
  • Para asegurarse de que una aplicación no impedirán el lanzamiento de otras se puede usar un GUID como identificador.

Historial

  • 02/10/07 - Version 0.2
    • Basado in fpc 2.2.0
    • Implementada la recepción de parámetros bajo unix
    • Optimización general y limpieza del código
  • 16/12/06 - Primera versión. Vea my blog para saber cómo empezó.

Autor

Luiz Américo Pereira Câmara

Licencia

LGPL Modificada

Descarga

Version 1.0: Descarga desde Google Code

Descargar versión en desarrollo (desde SVN).