iTunes Needs Internet Explorer.app for Scripting?

I wasn’t getting any answers from Apple’s forums, so I thought I might try to post here and see if anyone else out there is experiencing what I am.

I decided to delete Internet Explorer from my hard drive in a campaign to clear space, and the most curious problem has occurred. Whenever I try to use any of the Applescripting available under iTunes 3.0.1, I get a dialogue box asking me to find Internet Explorer.app. Why would that occur? What function would Explorer have with the interaction of iTunes? Is this happening to anyone else, and furthermore has anyone got a fix? I’d rather not install Explorer if possible, if for no other reason as I need the space.

Thansks for any info.

I don’t know which scripts you’re using, so can’t be sure, but it’s possible that the script has recorded IE as being the web browser to use.

Generally, there are two ways of opening a URL using AppleScript - you either tell a specific browser to open the URL (e.g. tell application “Internet Explorer” to openURL “http://www.apple.com/”) or you use the system preferences to do it for you (handleURL "http://www.apple.com/).

The latter form is by far preferable since it uses the user’s preference for a web browser and is therefore much more portable.

Try opening the script in the Script Editor and look for references to URLs. Change them to generic ‘handle URL’ references rather than IE-specific commands.

Alternatively a simpler solution may be to just choose your preferred browser when it asks for IE. Most browsers support the same commands for opening URLs and selecting a different browser (such as Netscape Communicator) when prompted for IE will force AppleScript to try and use the alternate browser for all commands that would have been directed to IE.

Thanks for the info. Here is where I got the scripts from:

http://www.apple.com/applescript/itunes/index.html

Apparently inside each of the scripts there is a versioncheck that calls to Explorer:

snip
– VERSION CHECK
set this_version to the version as string
if this_version is not greater than or equal to the required_version then
beep
display dialog "This script requires iTunes version: " & required_version & ¬
return & return & ¬
"Current version of iTunes: " & this_version buttons {“Update”, “Cancel”} default button 2 with icon 2
if the button returned of the result is “Update” then
my access_website(“http://www.apple.com/itunes/download/”)
return “incorrect version”
end if

snip
on access_website(this_URL)
ignoring application responses
tell application “Internet Explorer”
GetURL this_URL
end tell
snip

So I just deleted that and everything is OK. Thanks for the info though! Seems odd that Apple would do such a thing, what with Safari and all…

I believe the iTunes scripts were written before Safari was released. However, that’s still no excuse for them to not use the system-wide URL handler rather than the IE-specific one.

Shame on you, Apple.