AEv-Utility 2.0

tabliertablier Membre
20:55 modifié dans Vos applications #1
Ceci est la version 2.0 d'AEv-Utility. (lire l'aide en ligne)
AEv-Utility est un logiciel de visualisation des Apple Events, et d'aide à  l'écriture d'Apple Events.
Le logiciel utilise le "Apple Events logging". Malheureusement cette fonction voit la syntaxe de sa sortie évoluée avec le système. La version 2.0 fonctionne correctement sous 10.5 et 10.6.
Voici une traduction partielle de la documentation "Technologies de Communication" d'apple (OSx 10.5)
Les Apple Events
Sous Mac OS X, les "Apple Events" sont la principale technologie utilisée pour la communication entre processus et pour le scriptage d'application. Leurs structures sont parfaitement définies et permettent de faire des demandes (ou des réponses) complexes. Normalement, toute application devrait pouvoir répondre à  un ensemble minimum d'Apple Events  appelé Standard Suite. Cette suite a été définie par Apple.
Les Apple Events se programment en C et Carbon.

Documentations: "Apple Events programming guide", tn2022, tn2045, tn2046, tn2082, tn2084 et tn2106

Réponses

  • laudemalaudema Membre
    20:55 modifié #2
    Pile poil pour moi qui cherchait justement quel AEvent est utilisé par une application tierce à  laquelle j'envoie des commandes (1 ou 2 caractères) et qui me renvoie une chaà®ne.
    Deux bémols:
    - Même en attendant une demi heure rien ne s'affiche dans la fenêtre tant que je n'ai pas quitté l'application 'cible'
    - AEv-Utility peut me montrer tous les événements que mon appli m'envoie ou reçoit mais si je lui demande de suivre l'application tierce il reste muet. Elle n'est ni Carbon ni Cocoa, je m'en doutais, j'en ai désormais la preuve. Et pourtant elle envoie des AEvents ('rapp' reopen application en l'occurence, merci AEv-Utility ;)
  • APAP Membre
    20:55 modifié #3
    hum ca m'a l'air intéressant :) tout cela, je regarde cela ce soir.
  • tabliertablier Membre
    septembre 2010 modifié #4
    Il faut que j'explique la chose. AEv-utility est un GUI pour la fonction "Apple Event Logging" du système. En fait, je pense que cette fonction est intégrée par Apple dans BSD. Donc AEv-utility lance un NSTask qui fait executer la fonction avec en paramètre le programme a tester, récupère les résultats et les traite pour les afficher correctement.
    Voici le modèle de commande utilisé sous bash:
    export AEDebugSends=1; export AEDebugReceives=1 ; application-à -tester ; unset AEDebugSends ; unset AEDebugReceives

    En ce qui concerne l'affichage différé, j'ai essayé d'écrire dans la fenêtre des résultat, les données au fur et à  mesure de leur arrivée. Je pense qu'il faudrait utiliser les threads pour laisser un temps d'écriture. ça n'a pas marché! (ou je ne sais pas faire)

    @laudema
    essayes de mettre l'application tierce sous AEv-utility et utilise ton application de commande normalement (Notes que je n'ai jamais essayé cela.)
    Si c'est toi qui ouvres l'application tierce depuis ton application, essaie de la lancer avec une commande du genre indiqué plus haut, soit par un NSTask, soit en AppleScript par "do shell script..."
    D'après la documentation de "Apple Events programming guide" il est possible de tester plusieurs applications simultanément en utilisant le "Apple Event Logging" relancé pour chaque application.

    Primitivement, AEv-utility a été fait pour obtenir obtenir les modèles des syntaxes à  utiliser avec les fonctions du genre "AEBuildAppleEvent"
Connectez-vous ou Inscrivez-vous pour répondre.