• Bienvenue sur la nouvelle version du forum Guide de généalogie,

    Si vous avez du mal à vous connecter, faites une demande de réinitialisation de mot de passe : Réinitialiser mon mot de passe
  • Découvrez la nouvelle section du forum : Réalisations dans Généatique. Montrez et partagez vos créations d'arbres dans Généatique !
    Et participez au concours !

Arrêt de Généatique par commande

Bonjour.

Au début du processus journalier de copies de sécurités de mon PC, j'ai un fichier de commande qui arrête les principales applications que j'ai pu oublier d’arrêter.
Pour Geneatique j'utilise la commande suivante :
TaskKill /im Geneatique.exe /t /f
C'est un peu violent mais cela fonctionne.

D'après le CDIP, cela présente t'il un risque ? dans quels cas ?
Y a t'il un autre moyen plus 'élégant' ? Une commande ou un utilitaire spécifique ?

Merci de votre réponse.

Cordialement
Philippe Meron
 
Il faut absolument bannir ces arrêts "violents" d'applications, surtout lorsque celles-ci travaillent avec des bases de données, ce qui est le cas de Généatique.
Le risque : perte de la base de données (données corrompues).
Le seul moyen "propre" de fermer une application est manuel sauf si cette dernière intègre un dispositif d'arrêt programmé mais je n'ai rien vu de tel dans Généatique. Prédigny pourra certainement nous en dire plus.
 
....Prédigny pourra certainement nous en dire plus.
Pas sûr, c'est très technique ! Mais je suis étonné qu'un programme de sauvegarde ne sache pas fermer proprement les applications.
Généatique enregistre les données à fur et à mesure des saisies et je n'ai pas souvent observé de problème suite à un arrêt "sauvage" de Généatique. C'est sans doute différent si une coupure de courant arrive en plein milieu des saisies.
Dans le doute il vaut mieux fermer proprement les applications sensibles avant de lancer un backup.
 
Mais je suis étonné qu'un programme de sauvegarde ne sache pas fermer proprement les applications.
TaskKill n'est pas un programme de sauvegarde
Taskkill est une commande CMD que l’on peut utiliser depuis l’invite de commandes de Windows et qui permet de tuer un processus en cours d’exécution.
Ainsi vous pouvez forcer la fermeture d’un programme sur Windows.
C’est une alternative au gestionnaire de tâches de Windows.

Généatique enregistre les données au fur et à mesure des saisies, d'accord mais les fichiers concernés restent ouverts ce qui représente un danger non négligeable.

Mais comme vous le dites, il vaut mieux fermer "proprement" les applications.
 
Oui, pour la commande Taskkill mais je suppose qu'il fait ensuite appelle à un système de sauvegarde plus sophistiqué. Un tel système de sauvegarde ne me semble pas optimum pour Généatique car il ne doit pas faire la différence entre les types de données (Base de données et images) ; fait-il un archivage daté des généalogies. Si c'est par exemple un simple "miroir" des données, ce n'est pas suffisant pour Généatique.
 
Oui, pour la commande Taskkill mais je suppose qu'il fait ensuite appelle à un système de sauvegarde plus sophistiqué. Un tel système de sauvegarde ne me semble pas optimum pour Généatique car il ne doit pas faire la différence entre les types de données (Base de données et images) ; fait-il un archivage daté des généalogies. Si c'est par exemple un simple "miroir" des données, ce n'est pas suffisant pour Généatique.
Bonjour à tous les deux et merci de vos réponses.
Comme je le disais dans mon message l'arrte d'applications est le début de mon process de sauvegarde, ensuite il y a un utilitaire (FreeFileSync) qui gère les sauvegardes; mais pour que ces sauvegardes soient valables, il faut que les applications soient fermées...
 
Il faut absolument bannir ces arrêts "violents" d'applications, surtout lorsque celles-ci travaillent avec des bases de données, ce qui est le cas de Généatique.
Le risque : perte de la base de données (données corrompues).
Le seul moyen "propre" de fermer une application est manuel sauf si cette dernière intègre un dispositif d'arrêt programmé mais je n'ai rien vu de tel dans Généatique. Prédigny pourra certainement nous en dire plus.

Bonjour.
Je suis d'accord que Taskkill n'est pas une solution 'propre' pour fermer une application par un automatisme. D’où ma question à laquelle personne n'a encore apporté de réponse : quel autre moyen pour Généatique ?

Ceci dit les systèmes de base de données s'efforcent généralement d'être résilients (l'écriture systématique et immédiate de Généatique sert ce but). Car il existe d'autres raisons que Taskkill pour qu'un process s’arrête violemment sans avoir fermé proprement ses fichiers : coupures de courant, pannes disque, plantage de Windows ou de Généatique ou d'un driver d'imprimante, etc...

J'ai déja perdu des données dans Généatique pour diverses raisons, mais jamais à cause de ce Taskkill. Dans ces cas là j'étais très heureux d'avoir mes sauvegardes journalières systématiques, même au risque d'un Taskkill.

Cordialement
 
Pas sûr, c'est très technique ! Mais je suis étonné qu'un programme de sauvegarde ne sache pas fermer proprement les applications.
Généatique enregistre les données à fur et à mesure des saisies et je n'ai pas souvent observé de problème suite à un arrêt "sauvage" de Généatique. C'est sans doute différent si une coupure de courant arrive en plein milieu des saisies.
Dans le doute il vaut mieux fermer proprement les applications sensibles avant de lancer un backup.
Bonjour.

Mon programme de sauvegarde (FreeFileSync) ne sait pas fermer des applications, je ne suis pas sur qu'il en existe. En fait, à ce que j'en sais, la plupart des applications n'ont rien prévu dans ce domaine, et Windows ne l'oblige pas (sinon merci de m'expliquer ce serait sûrement la réponse à ma question).

Je suis d'accord avec vous : Généatique résiste très bien à ce traitement et à plein d'autres problèmes.

J'aimerais aussi utiliser une commande plus 'propre' que Taskkill, d’où ma question !

Cordialement
 
Chacun fait comme bon lui semble, mais après il ne faut pas pleurer si on a perdu des données.
A ma connaissance il n'existe pas d'application qui réponde à vos souhaits, il faudrait que cette appli connaisse les mécanismes et méandres des développeurs des différentes sociétés (pour chaque logiciel), vous comprendrez que c'est tout bonnement impossible !
 
TaskKill /im Geneatique.exe /t /f
C'est un peu violent mais cela fonctionne.
... cela présente t'il un risque ? dans quels cas ?
Bonjour,
Vous utilisez l'option "force" (/f) et /t (y/c les "processus enfants") , cela veut dire que vous demandez à Windows de supprimer le programme de la liste des taches immédiatement et "quoique qu'il fasse". Si il est en train d'écrire dans la base de donnée cela peut donc avoir des conséquences néfastes sur des données qui pourraient être écrites partiellement à ce moment là.

Il vaut mieux être plus soft et de ne pas utiliser /f et /t. Taskkill, sans ces options, enverra un signal à Geneatique pour lui demander de se fermer lui même (équivalent à Alt F4 et a ce que fait Windows en se fermant pour toutes les applications encore en exécution). Si Geneatique ne se ferme pas c'est qu'il y a une bonne raison; Dans ce cas il vaut mieux ne pas faire la sauvegarde.

Vous pouvez scripter (dans un .cmd) et vérifier qu'il est bien fermé avant d'appeler le programme de sauvegarde. Par exemple, sous Win10 :
Code:
@Echo off
Set APPNAME=Geneatique.exe
:: Si l'application est lancée, demande à l'application de se fermer, attend 2 sec
TaskKill /im %APPNAME%|Find "%APPNAME%" /i
if errorlevel 1 goto SAVE
Timeout 2 >NUL
Qprocess %APPNAME%
if errorlevel 1 goto SAVE
Echo Attention : L'application %APPNAME% ne veut pas se fermer
Echo Abandon sauvegarde
pause
exit
:SAVE
Echo Sauvegarde...
etc
(ajuster éventuellement le délai d'attente pour la fermeture de Geneatique: cf timeout)

Cordialement
Thierry
 
Dernière édition:
Bonjour,
Vous utilisez l'option "force" (/f) et /t (y/c les "processus enfants") , cela veut dire que vous demandez à Windows de supprimer le programme de la liste des taches immédiatement et "quoique qu'il fasse". Si il est en train d'écrire dans la base de donnée cela peut donc avoir des conséquences néfastes sur des données qui pourraient être écrites partiellement à ce moment là.

Il vaut mieux être plus soft et de ne pas utiliser /f et /t. Taskkill, sans ces options, enverra un signal à Geneatique pour lui demander de se fermer lui même (équivalent à Alt F4 et a ce que fait Windows en se fermant pour toutes les applications encore en exécution). Si Geneatique ne se ferme pas c'est qu'il y a une bonne raison; Dans ce cas il vaut mieux ne pas faire la sauvegarde.

Vous pouvez scripter (dans un .cmd) et vérifier qu'il est bien fermé avant d'appeler le programme de sauvegarde. Par exemple, sous Win10 :
Code:
@Echo off
Set APPNAME=Geneatique.exe
:: Si l'application est lancée, demande à l'application de se fermer, attend 2 sec
TaskKill /im %APPNAME%|Find "%APPNAME%" /i
if errorlevel 1 goto SAVE
Timeout 2 >NUL
Qprocess %APPNAME%
if errorlevel 1 goto SAVE
Echo Attention : L'application %APPNAME% ne veut pas se fermer
Echo Abandon sauvegarde
pause
exit
:SAVE
Echo Sauvegarde...
etc
(ajuster éventuellement le délai d'attente pour la fermeture de Geneatique: cf timeout)

Cordialement
Thierry
Bonjour.
Merci pour ces suggestions constructives et ce script fort bien construit.
Le problème est que, maheureusement, généatique ne réagit pas au signal d'arrête (il ne s'arrête pas), et c'est bien la raison de leur présence. Vous avez raison ce serait déja plus propre, je vais refaire un test sans elles au ca ou j'aurai manqué quelque chose..
Pour ce qui est des écritures en cours, le déclenchement des sécus à lieu généralement plus d'une heure après la dernière utilisation, alors s'il y a encore des écritures en cours elles ne se termineront de toutes manières jamais ...

Cordialement
Philippe Meron
 
Le problème est que, malheureusement, généatique ne réagit pas au signal d'arrêt
Bonjour,
Sur mes PC Windows 10 et 11, "TaskKill -im Geneatique.exe" provoque bien l'arrêt de Geneatique sans avoir à recourir à -f.
J'ai oublié de préciser qu'il faut désactiver les options qui posent des questions à l'arrêt de Geneatique sinon une boite de dialogue bloque l'arrêt (ex : Préférence de Geneatique/Affichage/Afficher le message de confirmation de sauvegarde avant l'arrêt).

En ayant la fenêtre active sur Geneatique est-ce que Alt-F4 arrête bien Généatique ? si il n'y a pas de boite de dialogue qui bloque c'est probablement qu'il y a un problème dans Geneatique.

Cordialement
Thierry
 
Bonjour,
Sur mes PC Windows 10 et 11, "TaskKill -im Geneatique.exe" provoque bien l'arrêt de Geneatique sans avoir à recourir à -f.
J'ai oublié de préciser qu'il faut désactiver les options qui posent des questions à l'arrêt de Geneatique sinon une boite de dialogue bloque l'arrêt (ex : Préférence de Geneatique/Affichage/Afficher le message de confirmation de sauvegarde avant l'arrêt).

En ayant la fenêtre active sur Geneatique est-ce que Alt-F4 arrête bien Généatique ? si il n'y a pas de boite de dialogue qui bloque c'est probablement qu'il y a un problème dans Geneatique.

Cordialement
Thierry
Merci genealogie.etienne.
Effectivement ce taskkill sans les options t et f arrête très bien Geneatique. Je pensais l'avoir testé (il y a 2 ou 3 ans), mais j'ai probablement fait une erreur à l'époque.
Encore merci de votre réponse centrée sur le sujet et oh combien efficace.
Cordialement
Philippe Meron
 

gratuit

Retour
Haut