Detect and remove iPod software

(imported topic written by Jay23)

Hi,

Has anyone put together a fixlet to detect and remove iPod software?

TIA

(imported comment written by BenKus)

Hey Jay,

Do you mean iTunes?

Ben

(imported comment written by Jay23)

yes

(imported comment written by BenKus)

Hey Jay,

I don’t know exactly how to uninstall it, but here is how to figure it out:

For detection, this is easy because iTunes is a registered applications:

exists regapp 
"itunes.exe"

For removal, it is a little harder because we need to find a way to silently uninstall it:

  1. Anything that is listed in Windows Add/Remove Programs dialog will have a key at “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall”. Look through the subkeys for any key that has a “DisplayName” that contains “itunes”.

  2. When you click “Uninstall” in the Add/Remove Programs dialog, it will run the “UninstallString”. Here is a way to use relevance to look up the uninstall string:

    value
    "UninstallString" of keys whose (exists value
    "displayname" of it AND value
    "displayname" of it as string as lowercase contains
    "itunes" AND exists value
    "UninstallString" of it) of key
    "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry

In my case, it returns:

C:\PROGRA~1\COMMON~1\INSTAL~1\Driver\11\INTEL3~1\IDriver.exe /M{59C4F14F-7590-45FC-BE9F-A67AB3590709} /l1033

If I try this from the command-line, it will run the uninstaller, which is great except it is not silent…

  1. Generally the trick to uninstalls is to figure out how to make them silent. Each installer technology is different, but I happen to know that this uninstall uses InstallShield (you can see the uninstall path has “installshield” in the pathname). Here is a detailed and very useful breakdown of installer technologies and how to make them silent:

http://unattended.sourceforge.net/installers.php

For this version of InstallShield in particular, you can use the “response file”, but here is an alternate method that is also helpful:

http://support.installshield.com/kb/view.asp?articleid=Q106685

  1. So I try running this from the command-line as the article suggests (note the “/uninst”):

C:\PROGRA~1\COMMON~1\INSTAL~1\Driver\11\INTEL3~1\IDriver.exe /M{59C4F14F-7590-45FC-BE9F-A67AB3590709} /l1033 /uninst

This quickly flashes a dialog box (annoying but probably OK) and then uninstalls in about a minute. I double-check my add/remove programs and sure-enough, it is gone…

  1. Now time to make a Fixlet:

Basic version:

Relevance: exists regapp 
"itunes.exe"   Action: wait C:\PROGRA~1\COMMON~1\INSTAL~1\Driver\11\INTEL3~1\IDriver.exe /M
{
{59C4F14F-7590-45FC-BE9F-A67AB3590709
} /l1033 /uninst

NOTE: Notice the double “{{” which is required to escape the special character “{”.

Advanced version (this will look up the value and then run the uninstall string):

Relevance: exists regapp 
"itunes.exe"   Action: wait 
{(value 
"UninstallString" of keys whose (exists value 
"displayname" of it AND value 
"displayname" of it as string as lowercase contains 
"itunes" AND exists value 
"UninstallString" of it) of key 
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" of registry as string) & 
" /uninst"
}

Done! Note that I didn’t test this and I am not entirely clear that it works for all versions of iTunes, but I hope that helped. As a side note, it looks like QuickTime can be uninstalled the same way.