macOS Mojave, Automateur "N'est pas autorisé à envoyer des événements Apple à des événements système."

après la mise à jour de Mojave, Je ne peux plus utiliser le service automator que j'ai utilisé précédemment avec l'alerte ci-dessous. enter image description here

  • dans Security & Privacy, j'ai déjà vérifié AppleScript Editor.

voyez-vous un problème avec mon code ou est-ce le problème de la nouvelle macOS?

Script

on run {input, parameters}
set pathList to {}
repeat with itemNum from 1 to count of input
    tell application "System Events"
        copy POSIX path of (container of (item itemNum of input)) to end of pathList
    end tell
end repeat
return pathList
end run

enter image description here

enter image description here

10
demandé sur Travelholics 2018-07-12 09:55:16

4 réponses

c'est définitivement une partie du nouveau cadre de sécurité de Mojave. terminal

osascript -e 'tell application "Finder"' -e 'set _b to bounds of window of desktop' -e 'end tell'

et vous recevoir:

36:42: execution error: Not authorized to send Apple events to Finder. (-1743)

Ce qui est censé arriver sur la première exécution est le Finder ouvre une boîte de dialogue vous informant que terminal demande la permission d'envoyer des évènements au Finder. Si vous le permettez, puis terminal sera ajouté à la page Automatisation dans System Preferences > Security & Privacy > Automation:

enter image description here

Il y a deux questions que je vois à l'instant:

  • l'implémentation de la demande d'autorisation pour l'action de script semble être sur écoute; j'ai lancé d'Autres scripts qui demandent l'autorisation d'envoyer des événements à Safari et le Finder ne demande pas l'autorisation, il retourne juste une erreur.
  • l'automatisation rationalisée nécessite un certain type de mécanisme pour obtenir les autorisations a priori; un exemple serait D'utiliser AppleScript avec Ansible et d'être incapable de précharger des subventions

D'autres ont rédigé des informations plus complètes à ce sujet:

espérons que cela soit réglé avant que Mojave ne se cela affecte sérieusement les capacités d'automatisation de macOS.

5
répondu Joe 2018-08-14 17:44:33

UPDATE: mise à jour à la dernière version bêta publique (à partir du 4 août 2018) A fixé l'émission pour moi. Avant cela, le problème persistait dans tous les bêtas publics de Mojave.


réponse originale:

je voulais juste vous faire savoir que moi-même et un autre ami éprouvons exactement le même problème, avec différents flux de travail D'Automateur qui utilisent Applescript (différent du vôtre). Nous avons le problème qui se produisent avec à la fois manuel activation (Finder -- > Services -->cliquez sur l'élément) et avec activation de raccourci clavier.

encore plus étrange, le flux de travail fonctionne à merveille lors des tests à L'intérieur de L'Automateur.

j'ai rempli un rapport de bogue par L'intermédiaire de L'Assistant de retour d'information, et suggère à quiconque voit cela que vous faites aussi! Roue qui grince et tous...

Automator - Autorisations d'erreur. "L'action "Exécuter AppleScript" rencontré une erreur: "non autorisé à envoyer Apple des événements pour les Événements Système.""

processus Automator fonctionne bien à l'intérieur Automator

5
répondu Mr. Bubbles 2018-08-05 02:53:44

j'ai eu ce genre d'erreur d'exécution AppleScript .app applications. J'ai reçu le message d'erreur suivant:

Not authorized to send Apple events to Finder. (-1743)

une solution consiste à réexporter l'Application de .scpt ou .applescript code source. Cela génère un nouveau .app application, qui dans mon cas s'est déroulée avec succès. Le lancement initial a nécessité une approbation (ainsi que certains lancements subséquents), et la demande a été ajoutée sous la rubrique Settings -> Security & Privacy -> Privacy -> Automation.

0
répondu Daniel S. 2018-09-28 00:21:51

Voici ce que j'ai fait qui a résolu le problème pour moi. Je suis allé à Préférences Système > Sécurité et confidentialité > accessibilité (Options à gauche) > (entrer le mot de passe système) > cliquez sur Automator (ou votre application que vous voulez activer) et TADA il fonctionne.

0
répondu lrosal 2018-10-04 16:54:58