Je développe une application Cocoa/Objective C qui lit le document actif depuis n'importe quelle application utilisant AppScript. J'ai réussi cette partie, mais ce serait vraiment bien de pouvoir dire avec certitude si l'application est basée sur un document ou non.Comment puis-je détecter si une application est basée sur un document?
L'approche évidente est de regarder l'attribut AXDocument de la fenêtre active dans l'application et si elle contient un chemin, nous savons que l'application est basée sur un document. Cependant, cela ne fonctionne pas si le document n'est pas enregistré. C'est aussi assez maladroit. Plutôt ennuyeux, l'attribut AXDocument peut apparaître dans une application non-document, donc sa présence ou son absence ne peut pas être utilisée pour fournir l'information que je cherche.
J'ai essayé d'examiner les autres propriétés et attributs exposés par AppleScript à la fois d'un processus d'application et d'une seule fenêtre. Aucun de ces éléments ne semble indiquer avec certitude si l'application est basée sur un document ou non.
J'ai également essayé de parcourir quelques fichiers Info.plist, mais je ne vois rien de fiable. Est-ce que je ne regarde pas assez dur? Ou y a-t-il un bon moyen de le faire en Objective C ou AppleScript?
Merci pour la réponse. Désolé, j'ai été si tard dans l'évaluation de votre réponse - je pensais que je serais averti par courriel lorsque les réponses ont été postées, mais cela ne s'est pas produit. Je pense que la vérification des entrées de menu est la meilleure idée jusqu'à présent. Merci pour votre réponse. –