Best Strategy to Control iTunes

I'm currently developing an App in iTunes, and I'm new to Cocoa and the
entire Mac development world. So far, things are looking great. I have few
questions, about which is the best strategy to follow in order to accomplish
some tasks. This is a special purpose app, in a controlled environment.

* Open iTunes if it's not already open.
- Is using NSWorkSpace the best way to launch iTunes? Or should I use
a different method? What ar the side effects if the application was already
- How can I detect if iTunes is not responding? I'd like to force quit
it, and open it again
- In a nutshell, I'd like iTunes to be open all times, and responsive,
how can I guarentee this?

* Communcation with iTunes
- What's the best interface to use? Running Apple Script through osa
(by shell invocation) inside my app? AppleScript-Cocoa bridge? Any other
- It's known that if any dialog is open in iTunes it freezes any
communication through the scriptable interface, how can I detect that and
put all my "messages" in a queue, so that when iTunes is responsive, I can
send my messages?

Thanks in advance,

Cocoa-dev mailing list (Cocoa-dev@xxxxxxxxxxxxxxx)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)

Help/Unsubscribe/Update your Subscription:

This email sent to maillists@xxxxxxxxx