Data Sheet

AN335
4 Rev. 0.2
3. Uninstallation
The following sections explain how uninstallation works.
3.1. Calling the Uninstaller
As stated in the above installation routine, an uninstaller is copied to a Silabs directory inside the Windows system
directory (such as C:\Windows\system32\Silabs\). This uninstaller is named DriverUninstaller.exe and is embedded
within the DriverInstaller.exe. Because this is a universal installation utility, the same DriverUninstaller.exe is used
by any Silicon Labs driver installations. During installation, the installer checks the version of the current uninstaller
(if it already exists on the system) and then only replaces it if it is missing or an older version exists.
The uninstaller takes in the <Device Type>\<Device Specific Key> portion of the registry key entered at the
completion of an installation via command line. For example, to uninstall the USBXpress device with VID 10C4 and
PID EA61, the command would look like this:
DriverUninstaller.exe “USBXpress\SIUSBXP&10C4&EA61”
The uninstaller is then provided with all of the installation information that was provided in the setup.ini. When the
uninstaller is first run, it will look to see if it should run in quiet mode or not. If so, the uninstallation is performed with
no windows or messages. If it is not in quiet mode, it will populate the window with all of the strings that were
specified in the setup.ini on installation, and if driver files were copied it shows their current existing location.
3.1.1. Driver Uninstallation Routine
First, the uninstaller will remove the copied drivers if they are specified to be removed. If no drivers were copied on
installation in the first place, then this check is skipped.
Next, the INF files for the device are uninstalled and this is different depending on the operating system. The basic
removal routine is to remove any INF/PNF combinations and then remove any catalog files (catalog files will only
be pertinent on Windows XP/Server 2003/Vista).
Finally, the computer is scanned for any device reference to the driver, and those devices are removed from the
system. This causes any matching USB devices to be stopped, and they will not be recognized by the system until
they are either unplugged and plugged back in or a “Scan for New Hardware” command is issued in the Device
Manager.