Difference between revisions of "Daemons and Services/fr"

From Lazarus wiki
Jump to navigationJump to search
(New page: {{Daemons and Services}} =What are daemons and services?= Unix daemons and windows services are programs running without user interaction. For example '''www''' or '''ftp''' servers are c...)
 
(→‎Daemon - Etape par étape: remove blank lines)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{Daemons and Services}}
 
{{Daemons and Services}}
=What are daemons and services?=
+
=Que sont les daemons("service" Unix) et les services(windows)?=
  
Unix daemons and windows services are programs running without user interaction. For example '''www''' or '''ftp''' servers are called daemons under linux and services under windows. Because they do not interact with the user directly, they close their stdin, stdout, stderr descriptors at start.
+
Les daemons Unix et les services windows sont des programmes fonctionnant sans interaction de l'utilisateur. Par exemple les serveurs '''www''' ou '''ftp''' sont appelés des daemons sous linux et des services sous windows. Parce qu'ils n'ont pas d'interaction avec l'utilisateur directement, ils ferment leurs descripteurs stdin, stdout, stderr au démarrage.
  
With Free Pascal, Lazarus it is possible to write these daemons/services platform independent via the Lazarus lazdaemon package. To avoid name conlicts with the Delphi components these classes are called 'daemons'.
+
Avec Free Pascal, Lazarus il est possible d'écrire cette plate-forme de daemons/services indépendante au travers du paquet lazdaemon de Lazarus. Pour éviter les conflits de nom avec les composants de Delphi ces classes sont appelées 'daemons'.
  
=Install LazDaemon=
+
=Installer LazDaemon=
  
Before you can start, install the lazdaemon package. Either via Components / Configure installed packages or by opening/installing the lpk file directly: lazarus/components/daemon/lazdaemon.lpk.
+
Avant de pouvoir commencer, installer le paquet lazdaemon. Soit à travers '''Paquet -> Configurer les paquets installés...''' ou en ouvrant/installant le fichier lpk directement: lazarus/components/daemon/lazdaemon.lpk.
This package installs some new components and menu items in the IDE.
+
Ce paquet installe quelques nouveaux composants et des éléments de menu dans l'IDE.
  
=Classes=
+
=Les Classes=
  
 
==TCustomDaemon==
 
==TCustomDaemon==
  
This is a TDataModule descendant that does all the work. There can be several TCustomDaemons classes and/or instances running at the same time and in the same process (multi threaded).
+
C'est un descendant de la classe TDataModule qui fait tout le travail. Il peut y avoir plusieurs classes TCustomDaemons et/ou instances qui tournent en même temps et dans le même processus (multi threaded).
  
 
==TCustomDaemonApplication==
 
==TCustomDaemonApplication==
  
This is a TCustomApplication descendant which creates the TCustomDaemons. This does not need any change. It runs under windows until it receives the Stop call or under linux until the TERM signal.
+
C'est un descendant de la classe TCustomApplication qui crée la classe TCustomDaemons. Cela ne nécessite pas de changement. Il s'exécute sous windows jusqu'à ce qu'il reçoive le signal d'arrêt ou sous linux jusqu'au signal TERM.
  
 
==TDaemonMapper==
 
==TDaemonMapper==
  
This component handles the service registration. Each instance needs one entry in the property '''DaemonDefs'''.
+
Ce composant gère le service d'enregistrement. Chaque instance a besoin d'une entrée dans la propriété '''DaemonDefs'''.
  
=Daemon - Step by Step=
+
=Daemon - Etape par étape=
  
*When the daemon is started the command line parameters are parsed. The following are predefined:
+
*Lorsque le daemon est lancé, les  paramètres de la ligne de commande sont analysés. Les suivants sont prédéfinis:
 +
**-i --install: Enregistre le daemon. Cela n'a pas d'effet sous unix.
 +
**-u --uninstall: Désenregistre le daemon. Cela n'a pas d'effet sous unix.
 +
**-r --run: Démarre le daemon. Windows fait cela normalement lui-même.
 +
*Création de la classe TDaemonMapper
 +
*Création d'une classe TCustomDaemon pour chaque entrée de ''DaemonDefs''.
 +
*installe, Désinstalle ou exécute chaque instance.
 +
*Si exécution: Démarre chaque instance dans son propre thread et puis attendre le signal Stop/TERM.
  
**-i --install: register the daemon. This has no effect under unix.
+
=Les méthodes Daemon =
**-u --uninstall: unregister the daemon. This has no effect under unix.
 
**-r --run: start the daemon. Windows does this normally itself.
 
 
 
*Create the TDaemonMapper
 
 
 
*Create one TCustomDaemon for each entry of ''DaemonDefs''.
 
 
 
*install, uninstall or run every instance.
 
 
 
*if run: start every instance in its own thread and then wait for Stop/TERM signal.
 
 
 
=Daemon Methods=
 
  
 
==Start==
 
==Start==
  
Called when daemon should start. This method must return immediately with ''True''.
+
Appelé quand le daemon devrait démarrer. Cette méthode doit retourner immédiatement un ''True''.
  
 
==Stop==
 
==Stop==
  
Called when daemon should stop. This method must return immediately with ''True''.
+
Appelé quand le daemon devrait arrêter. Cette méthode doit retourner immédiatement un ''True''.
  
 
==Shutdown==
 
==Shutdown==
  
Called when daemon should be killed. This method must stop the daemon immediately and return with ''True''.
+
Appelé quand le daemon devrait être tué. Cette méthode devrait arrêter le daemon immédiatement et retourner un ''True''.
This is not triggered under Linux. Linux simply kills the daemon.
+
Ce n'est pas déclenché sous Linux. Linux tue simplement le daemon.
  
 
==Pause==
 
==Pause==
  
Called when daemon should pause. This method must return immediately with ''True''.
+
Appelé quand le daemon devrait faire une pause. Cette méthode doit retourner immédiatement un ''True''.
Under Linux this is not triggered because the kernel stops the whole daemon on STOP and continues it on CONT.
+
Sous Linux ce n'est pas déclenché car le kernel arrête l'ensemble du daemon avec le STOP et le continue avec CONT.
  
 
==Continue==
 
==Continue==
  
Called when daemon should continue after a pause. This method must return immediately with ''True''.
+
Appelé quand le daemon devrait continuer après une pause. Cette méthode doit retourner immédiatement un ''True''.
Under Linux this is not triggered.
+
Sous Linux ce n'est pas déclenché.
  
 
==Install==
 
==Install==
Line 72: Line 67:
 
==Uninstall==
 
==Uninstall==
  
Called when daemon is unregistered as windows service. This method should return ''True'' on success.
+
Appelé quand le daemon est désenregistré comme service windows. Cette méthode devrait retourner ''True'' si elle réussit.
  
 
==AfterUnInstall==
 
==AfterUnInstall==
  
Called after daemon was unregistered as windows service. This method should return ''True'' on success.
+
Appelé quand le daemon est désenregistré comme service windows. Cette méthode devrait retourner ''True'' si elle réussit.
  
 
==HandleCustomCode==
 
==HandleCustomCode==
  
Called when a special signal was sent to the daemon. This method should return ''True'' on success.
+
Appelé quand un signal spécial a été envoyé au daemon. Cette méthode devrait retourner ''True'' si elle réussit.
  
==Getting Started==
+
==Pour pouvoir démarrer==
Before you are able to create a Service or Daemon application you must first ensure that the Lazarus Daemon package "lazdaemon" is installed.  
+
Avant d'être capable de créer une application à base de service ou de  Daemon vous devez d'abord vous assurer que le paquet de daemon de Lazarus "lazdaemon" est installé.
  
=Example=
+
=Exemple=
  
There is a simple example in examples/cleandir/. Read the README.txt.
+
Il est un exemple simple dans le répertoire examples/cleandir/. Lire le fichier README.txt.
  
 
-----
 
-----
[[Office Automation]]
+
[[Office Automation]]{{AutoCategory}}

Latest revision as of 02:11, 9 January 2022

English (en) español (es) français (fr) polski (pl) português (pt) русский (ru)

Que sont les daemons("service" Unix) et les services(windows)?

Les daemons Unix et les services windows sont des programmes fonctionnant sans interaction de l'utilisateur. Par exemple les serveurs www ou ftp sont appelés des daemons sous linux et des services sous windows. Parce qu'ils n'ont pas d'interaction avec l'utilisateur directement, ils ferment leurs descripteurs stdin, stdout, stderr au démarrage.

Avec Free Pascal, Lazarus il est possible d'écrire cette plate-forme de daemons/services indépendante au travers du paquet lazdaemon de Lazarus. Pour éviter les conflits de nom avec les composants de Delphi ces classes sont appelées 'daemons'.

Installer LazDaemon

Avant de pouvoir commencer, installer le paquet lazdaemon. Soit à travers Paquet -> Configurer les paquets installés... ou en ouvrant/installant le fichier lpk directement: lazarus/components/daemon/lazdaemon.lpk. Ce paquet installe quelques nouveaux composants et des éléments de menu dans l'IDE.

Les Classes

TCustomDaemon

C'est un descendant de la classe TDataModule qui fait tout le travail. Il peut y avoir plusieurs classes TCustomDaemons et/ou instances qui tournent en même temps et dans le même processus (multi threaded).

TCustomDaemonApplication

C'est un descendant de la classe TCustomApplication qui crée la classe TCustomDaemons. Cela ne nécessite pas de changement. Il s'exécute sous windows jusqu'à ce qu'il reçoive le signal d'arrêt ou sous linux jusqu'au signal TERM.

TDaemonMapper

Ce composant gère le service d'enregistrement. Chaque instance a besoin d'une entrée dans la propriété DaemonDefs.

Daemon - Etape par étape

  • Lorsque le daemon est lancé, les paramètres de la ligne de commande sont analysés. Les suivants sont prédéfinis:
    • -i --install: Enregistre le daemon. Cela n'a pas d'effet sous unix.
    • -u --uninstall: Désenregistre le daemon. Cela n'a pas d'effet sous unix.
    • -r --run: Démarre le daemon. Windows fait cela normalement lui-même.
  • Création de la classe TDaemonMapper
  • Création d'une classe TCustomDaemon pour chaque entrée de DaemonDefs.
  • installe, Désinstalle ou exécute chaque instance.
  • Si exécution: Démarre chaque instance dans son propre thread et puis attendre le signal Stop/TERM.

Les méthodes Daemon

Start

Appelé quand le daemon devrait démarrer. Cette méthode doit retourner immédiatement un True.

Stop

Appelé quand le daemon devrait arrêter. Cette méthode doit retourner immédiatement un True.

Shutdown

Appelé quand le daemon devrait être tué. Cette méthode devrait arrêter le daemon immédiatement et retourner un True. Ce n'est pas déclenché sous Linux. Linux tue simplement le daemon.

Pause

Appelé quand le daemon devrait faire une pause. Cette méthode doit retourner immédiatement un True. Sous Linux ce n'est pas déclenché car le kernel arrête l'ensemble du daemon avec le STOP et le continue avec CONT.

Continue

Appelé quand le daemon devrait continuer après une pause. Cette méthode doit retourner immédiatement un True. Sous Linux ce n'est pas déclenché.

Install

Called when daemon is registered as windows service. This method should return True on success.

Uninstall

Appelé quand le daemon est désenregistré comme service windows. Cette méthode devrait retourner True si elle réussit.

AfterUnInstall

Appelé quand le daemon est désenregistré comme service windows. Cette méthode devrait retourner True si elle réussit.

HandleCustomCode

Appelé quand un signal spécial a été envoyé au daemon. Cette méthode devrait retourner True si elle réussit.

Pour pouvoir démarrer

Avant d'être capable de créer une application à base de service ou de Daemon vous devez d'abord vous assurer que le paquet de daemon de Lazarus "lazdaemon" est installé.

Exemple

Il est un exemple simple dans le répertoire examples/cleandir/. Lire le fichier README.txt.


Office Automation