Just wondering if someone can help with an issue I have encountered trying to uninstall Epson software silently via a script. I have an upgrade approaching and need to completely uninstall these drivers automatically. First I tried the following vbscript:

On Error Resume Next

Dim strComputer
strComputer = "."

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSoftware = objWMIService.ExecQuery("Select * from Win32_Product Where Name LIKE 'EPSON%'") 

For Each objSoftware In colSoftware 
wscript.echo "Uninstalling: " & objSoftware.Name 

This did work for only one of the four installed epson softwares (The one that via: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall was an msi), the other uninstall strings were listed as setup files in the InstallShield Installation Information directory.  I tried these strings directly through a command prompt using different switch combinations (-runfromtemp -l0x0009 -removeonly /s /sms /silent /verysilent).  I cannot seem to get them to uninstall. 
Any suggestions on any other methods I could try to get these applications uninstalled completely?
3 Comments   [ + ] Show Comments


  • Have you considered running a full capture on the installation of these drivers so that you can grab the various uninstallstrings that are generated in the registry? I presume that an uninstall from Add/Remove programs does remove the drivers completely? Are you running the uninstall as local system or as an elevated user? From what I recall, there is some printer information in HKCU which of course cannot be accessed by a local system account.
  • An uninstall from Add/Remove programs does work at completely uninstalling drivers and software. The issue is to script this. Although I get the uninstaller to begin, I can't find the right switch to override the yes/no prompt confirming uninstallation and have the software fully uninstall without intervention. I've tried -versysilent, -silent, -suppressmsgboxes, -sp and various combinations as well as being sure to use the run from temp switch so it can fully delete itself after
  • As you have mentioned that these are InstallShield installers, have you tried to create a response file (-r -f1... or /r /f1... switches) and then execute it silently (-s or /s)?

Please log in to comment


You can check in registry at:
Search the GUID's for your software, then the UninstallString row can be used for uninstalling.
Or you can put together a nice script that goes over this, search in the DisplayName then read and execute the UninstallString.

Using the Win32_Products very buggy and can also trigger reinstallation of other software.
There are multiple articles on this matter.
Answered 01/16/2015 by: dedenker
Third Degree Black Belt

  • I have tried running the exact uninstall string from that location but it still requires user intervention to confirm the uninstallation. The issue is that I want to uninstall them silently without needed user intervention and therefore be able to script this and run via a package and deploy to multiple systems to automate the task.
    • I see, some office appliation have the same problem.
      The solution I use there is AutoIT, with this you can create scripts that can take over these "user actions".
Please log in to comment
Answer this question or Comment on this question for clarity
Admin Script Editor
Admin Script Editor is an integrated scripting environment available free here at ITNinja