1 votes

Existe-t-il un moyen d'empêcher un processus avec un certain nom d'être créé ?

Au lancement, l'application Reverso génère deux processus : Reverso (l'application elle-même) et l'ennuyeux Reverso Helper, qui occupe la barre de menu avec son icône et reste actif même après la suppression de l'application principale par cmd+Q.

killall "Reverso Helper" tue le processus indésirable tout en gardant le programme principal intact. Cependant, si l'application principale reste ouverte pendant une douzaine de secondes, le processus Helper est à nouveau créé.

ps -o ppid=, -p $(pgrep "Reverso Helper") | xargs ps -p nous dit que le processus parent de Reverso et Helper est 1 /sbin/launchd , "le cadre de gestion des services utilisé par MacOS, similaire à certains égards à systemd sous Linux". qui est interfacé par un outil terminal launchctl.

J'ai étudié le manuel launchctl de manière assez superficielle et j'ai cherché les fichiers Reverso Job Defenitions dans les répertoires spécifiés, mais je n'en ai pas trouvé. Je n'ai pas voulu creuser plus profondément dans cette direction.

J'ai l'impression qu'il me manque un moyen plus évident et plus élégant d'empêcher un processus portant un certain nom de démarrer sur n'importe quel système de type Unix, ce qui serait beaucoup plus utile à connaître que des trucs spécifiques à MacOS. S'il vous plaît, partagez vos idées.

1 votes

La plupart (peut-être toutes) des applications d'assistance ont un but - soyez sûr de vouloir supprimer leur fonctionnalité. L'application auxiliaire Reverso permet de mettre le raccourci Control-C-C à la disposition de toutes les applications, même lorsque l'application Reverso principale n'est pas en cours d'exécution.

0 votes

@Gilby, je sais ce que c'est déclare à faire en arrière-plan. Cependant, je trouve ce comportement ennuyeux et contradictoire avec les principes de l'UX de MacOS. Chaque application GUI devrait être entièrement compatible avec cmd+Q (à l'exception du Finder).

3 votes

Si vous n'aimez pas le mode de fonctionnement de Reverso, vous pouvez essayer une autre application similaire, comme Translatium. De nombreuses applications doivent fonctionner avec des processus auxiliaires pour se conformer aux restrictions de conception d'Apple.

0voto

nohillside Points 82672

Alors que vous pourriez (en théorie) envelopper l'élément exec() pour empêcher l'exécution de certains chemins/noms, cette protection serait plutôt faible car tout binaire peut être facilement renommé pour contourner le blocage.

Ce qui pourrait aider est de mettre en pause/arrêter le processus en exécutant

killall -STOP "Reverso Helper"

Le processus restera mais ne prendra plus de temps CPU. L'icône dans la barre de menu restera cependant visible.

0 votes

Merci pour votre réponse ! Pourriez-vous préciser ce qui empêche l'exécution ? L'espace de la barre de menu est trop précieux pour être gaspillé :) J'ai trouvé une méthode efficace pour résoudre mon problème : supprimer l'application Helper du contenu du paquetage de Reverso. Mais j'aimerais bien connaître une méthode plus générale.

0 votes

@NickS Vous pourriez rechercher l'Helper dans le système de fichiers et le supprimer :-) Ou installer Bartender pour cacher certains éléments de la barre de menu.

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