3 votes

Comment fermer les applications en veille ?

J'ai une application de gestion des mots de passe (KeePassX) dont je synchronise la sauvegarde sur Dropbox à travers plusieurs ordinateurs.

Cependant, la base de données des mots de passe ne peut être ouverte que sur un seul ordinateur à la fois pour des raisons de verrouillage des fichiers. Les problèmes surviennent lorsqu'un ordinateur se met en veille et que l'application reste ouverte sur cet ordinateur, les verrous de la base de données ne sont jamais supprimés et, dans le pire des cas, des modifications non sauvegardées sont apportées à la base de données.

Serait-il possible de créer un programme qui invite à la fermeture lors de la mise en veille (comme pour l'arrêt) ou d'enregistrer une macro qui ferme le programme lorsque l'ordinateur se met en veille ou est mis en veille par le menu Apple ?

3voto

myhd Points 3320

Il m'est difficile de ne pas mettre en doute la validité de votre installation (synchro cassée !), mais ... pour faire quelque chose sur le sommeil ou le réveil, vous devriez essayer SleepWatcher par Bernhard Baehr (plus de contexte à l'adresse suivante Conseils pour Mac OS X ). Il utilise launchd pour le contrôle.

SleepWatcher] est un outil en ligne de commande (démon) [ ] qui surveille le sommeil, le réveil [ ] d'un Mac. [ ] d'un Mac. Il peut être utilisé pour exécuter une commande Unix lorsque le Mac [ ] se met en veille. [ ] passe en mode veille ou se réveille, [ ]

Si vous avez un peu d'expérience en matière de terminal, je pense que vous pouvez le mettre en place. Assurez vous de lire la section bien cachée "Installation pour les nouveaux utilisateurs de SleepWatcher" dans ReadMe.rtf

1voto

Installation de SleepWatcher :

wget http://www.bernhard-baehr.de/sleepwatcher_2.2.tgz
tar -xf sleepwatcher_2.2.tgz
sudo mkdir -p /usr/local/sbin /usr/local/share/man/man8
sudo cp sleepwatcher_2.2/sleepwatcher /usr/local/sbin
sudo cp sleepwatcher_2.2/sleepwatcher.8 /usr/local/share/man/man8
cp sleepwatcher_2.2/config/de.bernhard-baehr.sleepwatcher-20compatibility-localuser.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/de.bernhard-baehr.sleepwatcher-20compatibility-localuser.plist
echo $'#!/bin/bash\ndate>/tmp/date'>~/.sleep
echo $'#!/bin/bash\nsay wake up'>~/.wakeup
chmod +x ~/.wakeup ~/.sleep

Vous pouvez également tester SleepWatcher en exécutant /usr/local/sbin/sleepwatcher --verbose --sleep ~/.sleep --wakeup ~/.wakeup .

Vous pouvez quitter l'application en exécutant osascript -e 'quit app "Application Name"' ou simplement killall Application\ Name .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X