2013-09-24 3 views
0

Une de mes applications de bureau J'ai besoin de savoir où la bibliothèque iPhoto est installée, par programmation. Je ne veux pas le prendre à partir de l'emplacement prévu (/ Users/moi/Pictures/iPhoto) car un utilisateur expérimenté peut l'avoir installé ailleurs.Besoin de savoir Emplacement de la photothèque iPhoto par programmation à l'aide de Applescript

Je suis en train de développer une application utilisant Python et j'imagine qu'Applescript pourrait avoir un moyen de comprendre l'emplacement d'iPhoto mais je ne sais pas comment.

Répondre

1

Pourquoi ne pas tout simplement ...

set myPath to path to application "iPhoto" 
+0

Souvent, les réponses les plus simples sont les meilleures - je ne sais pas pourquoi cela n'est pas accepté. Aussi, si le chemin est requis avec '/' séparateurs au lieu od ':', alors utilisez ce 'set myPath vers POSIX path de (chemin de l'application" iPhoto ")' –

+0

L'affiche demande l'emplacement de la photothèque iPhoto –

+0

DigiMonk, Où voyez-vous cela? "besoin de savoir où l'iPhoto est installé" – adayzdone

2

Une méthode consiste à utiliser 'defaults'.

Applescript:

set lib_path to do shell script "defaults read com.apple.iphoto LibraryPath" 

devrait-elle être la même façon de le faire directement à partir de Python. Un inconvénient à cela est si Apple modifie le format du fichier de préférences iPhotos à l'avenir et il casse.

+0

Works pour iPhoto, mais pas nécessairement avec d'autres applications. Essayez iTunes, par exemple. –

+0

Mieux (et correcte) façon d'utiliser 'defaults' est: définir iPhotoLibraryFilePath à (faire shell script "par défaut lire com.apple.iphoto LibraryPath") (pas grep nécessaire) –

+0

Merci @DigiMonk ont ​​une réponse simplifiée basée sur ce – adamh

0

Appelez simplement la commande système which iPhoto (en supposant que vous puissiez exécuter iPhoto depuis un shell) et analysez la sortie.

+0

J'ai essayé «quel iPhoto» et il ne sort rien –

+0

Que se passe-t-il dans un terminal si vous tapez 'which iphoto' - désolé je ne sais pas mac donc pas sûr de ce que le cas pourrait être. –

+0

J'ai tapé 'quel iphoto' sur le terminal et il n'a rien sorti. J'utilise OS X 10.8.5 –

0

[Suppression de réponse basée sur les OP LaunchServices que veut apparemment l'emplacement de la bibliothèque iPhoto , pas iPhoto lui-même.]

OP devrait examiner de iMedia framework (dev forum) Carélie, qui inclut le support d'iPhoto. L'équipage de Karelia a également fait beaucoup de travail pour trouver comment le rendre compatible bac à sable/AppStore, ce qui peut aussi être une considération en fonction de la façon dont le PO prévoit de distribuer l'application.

Questions connexes