IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Problème avec un Applescript avec Maverick, Comportement d'un Applescript different sur Maverick
Options
accrok
posté 28 Feb 2014, 12:01
Message #1


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Bonjour a tous !!!

Je suis débutant en Applescript et j'ai un problème depuis la mise à jour de Maverick!

Auparavant, avec Mountain Lion, tout a fonctionnais parfaitement!

Je vous explique, j'ai un Applescript (bundle) avec mes resources (scptd), ce script utilise d'autres scripts (.scpt) contenues dans ce bundle.

Chacun de ces scripts utilisent des resources contenus dans le bundle (icônes, scripts, dossiers, images...).

J'espère être clair et que vous me suivez jusqu'ici ;-)

Donc auparavant lorsque je faisait appel à un des scripts (child), tout fonctionnais parfaitement, les dialogue avec icônes custom s'affichaient, les resources étaient copier...etc

Mais depuis que je suis passé a Maverick, plus rien ne focntionne, aucune alerte (dialogue) avec mes icônes custom sont affichés et aucun contenu de est détecté/copier!

Le code d'erreur est -10004 tels que (errAEPrivilegeError ou telBadHandErr: mauvais handle spécifié)

Pourriez-vous m'aider à comprendre ce qui se passe s'il vous plaît?

Voici le code de l'Applescript master (scptd :


Code
set theName to (choose from list {¬
"make this", ¬
"make that"})

if theName is false then

display dialog "Cancelled." buttons {"Exit"} default button {"Exit"} with icon path to resource "myAlert.icns" in bundle (path to me)

else

if first item of theName = "make this" then
set userResponse to (choose from list {¬
"make this one", ¬
"make this two", ¬
"make this three"})

tell application "Finder"
set resPath to (path to me as text) & "Contents:Resources:Scripts:makethis:" & userResponse & ".scpt"
set the_script to load script alias resPath
end tell

run script the_script

else if first item of theName = "make that" then
set userResponse to (choose from list {¬
"make that one", ¬
"make that two", ¬
"make that three"})

tell application "Finder"
set resPath to (path to me as text) & "Contents:Resources:Scripts:makethat:" & userResponse & ".scpt"
set the_script to load script alias resPath
end tell

run script the_script

end if

end if



Maintenant, voici un exemple de code Applescript (child - contenu dans le master) :

Code
set projectName to text returned of (display dialog "Please enter the Make This Project name:" default answer "Make_this_Name")
set loc to choose folder "Choose Parent Folder Location"

try
tell application "Finder"
set newMasterFolder to make new folder at loc with properties {name:projectName}
set resPath to (path to me as text) & "Contents:Resources:makethis:files:makethisOne:"
duplicate resPath & "folderA" to newMasterFolder
duplicate resPath & "folderB" to newMasterFolder
duplicate resPath & "folderC" to newMasterFolder
end tell

-- Display dialog for result of script and for ask
display dialog "Your Make This Project creation was done successfully!\n\nWant to reveal the project folder?" buttons {"Cancel", "Go to my new Project folder"} default button "Go to my new Project folder" cancel button "Cancel" with icon path to resource "Success.icns" in bundle (path to me)
if button returned of the result = "Go to my new Project folder" then
tell application "Finder"
reveal newMasterFolder
activate
end tell
end if
end try


Voila, maintenant à partir de ca, je pense avoir seulement deux solutions :
- La première est de trouver d'ou vient ce bug , logique ;-)
- la seconde est de regrouper tous les scripts (un bonne quinzaine au total) dans le master .scptd. mais pour cette solutions je ne suis pas assez expérimentez pour le faire, j'ai deja galérer avec des tutos pour faire ce que je vous montre lol !

bref, un peu d'aide serait plus que bienvenue car voilà deux mois que je m'arrache les cheveux !

Perso, je pense fortement que le problème viendrais de la facon dont est codée certaines parties, voir "Scripting Addition Security" ici :
https://developer.ap...00982-CH106-SW6

Merci à vous pour votre aide

PS: J'ai joint un exemple de mon script pour vous servir de demo! comme vous le verrez, le script à l'air de fonctionner mais les dialogue avec icone custom ne s'affiche pas, et les fichiers contenu dans les dossiers ne se copient pas alors qu'avant tout focntionnait nickel chrome sur Mountain Lio, sur Lion et Leopard!

Ce message a été modifié par accrok - 28 Feb 2014, 12:06.
Fichier(s) joint(s)
Fichier joint  App_Example.scptd.zip ( 290.73 Ko ) Nombre de téléchargements : 5
 
Go to the top of the page
 
+Quote Post
PBell
posté 28 Feb 2014, 22:38
Message #2


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 264
Inscrit : 7 Dec 2013
Lieu : Ile de France
Membre no 188 169



Bonsoir,
Je pense que ton problème vient d'une nouvelle protection Apple sur les scripts.
En effet, depuis 10.9, Apple a renforcé la sécurité des script qui doit , chacun, être autorisés.
Sur les versions précédentes, cocher la case dans préférences/accessibilité suffisait pour tous les scripts.

Sur 10.9, chaque script doit être autorisé comme indiqué sur cette page du support Apple Applescript 10.9
(voir paragraphe Accessibility)

Il faut donc que chacune de tes librairies soit autorisée.

Cordialement


--------------------
iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8
iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11
Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8
Go to the top of the page
 
+Quote Post
accrok
posté 1 Mar 2014, 00:46
Message #3


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Merci pour l'info, j'ai déjà autorisé pas mal dans les préférence en suivant les tuto de macoxautomation.com, mais je vais regarder et vérifier cela de plus prêt, merci à toi!

Mais si le problème vient de la (ce dont je doute), comment expliquer que chacun des script (child) fonctionne parfaitement lorsqu'ils sont seul (en bundle), et m'affiche mes dialogue avec icône custom et me copiant les fichiers à l'identique !!?
Go to the top of the page
 
+Quote Post
PBell
posté 1 Mar 2014, 16:07
Message #4


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 264
Inscrit : 7 Dec 2013
Lieu : Ile de France
Membre no 188 169



Bonjour,
Je te suggère aussi la lecture de la page Apple support
En particulier en bas de la page 17, paragraphe Scripting Addition Security.

Cela pourrait être en rapport avec l'imbrication de tes blocs "tell".
Tu devrais d'ailleurs d'abord essayer de supprimer les blocs tell inutiles. Dans ton script zip en exemple, tous tes blocs tell application "Finder" sont inutiles.

En effet, les fonctions path to me, load et run ne sont pas liées au Finder.

Je ne peux malheureusement pas t'aider plus, n'étant pas sous Mavericks ( et ne souhaitant pas y passer pour l'instant !!)

Cordialement

petit problème de lien sur la page Apple (qui est peut être limité aux développeurs : voici en tout cas l'URL complet : https://developer.apple.com/library/mac/rel...AppleScript.pdf

Ce message a été modifié par PBell - 1 Mar 2014, 16:09.


--------------------
iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8
iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11
Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8
Go to the top of the page
 
+Quote Post
accrok
posté 1 Mar 2014, 17:01
Message #5


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Ouep, merci, c'est le lien que j'avais donné et c'est justement le truc que e soupçonnais,

Scripting Addition Security


Mais j'avais déjà essayer de faire quelques bidouilles et changements par-ci par-la, sans y arriver !

La je viens de recommencer en suivant tes conseils et c'est toujours idem, pas moyen de faire fonctionner le script en master (.scptd) avec les child (.scpt), par contre toujours idem, un script tout seul convertit en .scptd avec tous ce qui faut dedans marche perfect !

C'est vraiment, vraiment trop chelou cette histoire
Go to the top of the page
 
+Quote Post
accrok
posté 4 Mar 2014, 13:14
Message #6


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Petit UP, car toujours pas résolu !
Go to the top of the page
 
+Quote Post
accrok
posté 10 Mar 2014, 07:50
Message #7


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Petit up histoire de pas laisser le topic au oubliette car toujours pas résolu !
Go to the top of the page
 
+Quote Post
accrok
posté 17 Mar 2014, 12:38
Message #8


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Ben dite donc, mon topic est parti au oubliette je crois ! C'est bien rare, personne pour aider ! Ai-je coller une colle au pros ?
Go to the top of the page
 
+Quote Post
PBell
posté 18 Mar 2014, 07:37
Message #9


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 264
Inscrit : 7 Dec 2013
Lieu : Ile de France
Membre no 188 169



Désolé Accrok,
Mais étant resté sur 10.6, je n'ai aucun de ces problèmes. Je ne peux donc t'aider davantage !

(la lecture des différents forums m'incite vraiment à ne surtout pas installer 10.9 !!)

A+


--------------------
iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8
iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11
Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8
Go to the top of the page
 
+Quote Post
accrok
posté 18 Mar 2014, 10:53
Message #10


Nouveau Membre


Groupe : Membres
Messages : 11
Inscrit : 5 Nov 2009
Membre no 144 932



Merci quand meme ;-)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 19th April 2024 - 08:03