Try running the following script in AppleScript editor:
If you get an error message back from the AppleScript editor mentioning error number -10661 has occurred, then you’re going to need the following procedure.
The problem stems from the launch services database being out of sync and not knowing which app to launch when it gets passed “Contacts” as input. To solve that, we’re going to do a couple of things in Terminal (roll up your sleeves!).
First up, we’re going to ensure that the locate database is loaded. We’re going to need that to find the address of the Launch Services database, so
1. Open Terminal.app (/Applications/Utilities/Terminal.app) and type
You should get one of two possible results. Either you get a message telling you that the locate database doesn’t exist, and instructions on a command to run to create it:
or you get a path back that looks something like
In the first case, use the command suggested in the reply to create the database. The Terminal prompt will probably reappear almost instantaneously after you run that, but your database may not have finished creating yet. Wait a few minutes before running the ‘locate lsregister’ command again.
In the second case or once you’ve got your locate database loaded and working, copy the address returned to the clipboard by dragging across the whole thing to highlight it and hitting ‘command-C’ on your keyboard.
Still with Terminal active, hit ‘command-V’ to paste that address at the prompt. Hit the spacebar once, and then complete the command by adding
So the whole thing should look something like this:
Finally, hit ‘return’ to enter the command. It’ll take a few seconds to return the prompt (it’s about 10 seconds on my machine, but your mileage may vary).
After the prompt returns, go test that AppleScript again. Hopefully, Contacts fires up without issue. 🙂
*Thanks go to Yvan and Deivy on the AppleScript users list for identifying and solving this problem.