UniqueInstance/fr

From Lazarus wiki
Jump to navigationJump to search

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

À propos de

UniqueInstance fournit un moyen facile de forcer une seule instance par application fonctionnant en même temps.

Fonctions

  • Facile d'utilisation: il suffit de glisser un composant dans le formulaire(form) principal.
  • Fournit un mécanisme pour recevoir la ligne de commande des autres instances.

Comment utiliser(le composant)

Il suffit de le déposer dans le formulaire principal

Propriétés:

  • Enabled: Active / désactive le composant
  • Identifier: utilisés pour fournir un moyen d'identifier l'application

événement

  • OnOtherInstance: appelé si une autre instance est lancée. Reçoit les paramètres transmis à cette instance.

How To Use (Raw)

Add uniqueinstanceraw unit to your uses section.

Call the InstanceRunning function: it will return true if there's already a instance running. There are two variants: one with an Identifier argument (String) and one without. The second will use the executable name as the Identifier.

Remarks

  • It was developed and tested under win32. I don't have a Linux machine at time (Testing under Ubuntu Linux and working fine. By liyuangarcia with date 08/05/2007)
  • Although it does not use platform dependent code, the callback mechanic used to pass the command line probably won't work in Linux. This occurs because TSimpleIPCServer under Linux does not call the OnMessage event (At least until some months ago when i tested it).
  • If you put two TUniqueInstance components in the same application with the same identifier your application wont load.
  • The Identifier is optional both to the function and the component. In the case it's not used, the executable name is used as a Identifier. The consequence is that if someone changes the exe name another instance will not be identified.
  • To make sure a application will not avoid other launching you can use a GUID as the Identifier

History

  • 16/12/06 - Initial release. See my blog to know how it began.

Author

Luiz Américo Pereira Câmara

License

Modified LGPL


Download

Lazarus CCR sourceforge.