How does the Apple iTunes web site launch the iTunes application on my computer when I click the blue "Launch iTunes" button?
itunes
Solution
You can register "protocol handlers" with some browsers. I think there's a place in the operating system where you can regsiter your own.
See
- http://msdn.microsoft.com/en-us/library/dd588696(office.11).aspx
- http://blog.ryaneby.com/archives/firefox-protocol-handlers/
Creating new ones in firefox: http://ajaxian.com/archives/creating-custom-protocol-handlers-with-html-5-and-firefox
In safari: http://discussions.apple.com/thread.jspa?threadID=1280989
Special "mobile protocol handlers" are used extensively in the iPhone/iPod to launch the phone dialler, email sending, google maps and so on... http://www.iphonedevfaq.com/index.php?title=Protocols
Here's an example of how to reconfigure the `mailto:` protocol handler to trigger gmail rather than an external mail client: http://lifehacker.com/392287/set-firefox-3-to-launch-gmail-for-mailto-links
Problem
This is new to me as a desktop developer. If I could figure out how this is accomplished, it may be relevant to some research I'm doing, specifically how to migrate thick desktop apps to a web implementation. The more forms-oriented and lightweight graphics I can figure out, but heavyweight 3D graphics still requires some form of non-browser application. As nearly as I can determine, iTunes installs some form of new protocol handler on my machine, corresponding to "itms", in place of "http". This is cool and mysterious to me, almost magical. Any help or suggestions for additional reading materials and/or resources would be very welcome.