Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

At MSDN it is stated that there are two techniques to install INF files on Windows XP or later:

  • Programmatically through SetupCopyOEMInf function.
  • Add an entry called CopyInf on an INF section.

Are there an equivalent entry on an inf section to uninstall inf files that is similar to SetupUninstallOEMInf function?

I found this solution using SetupUninstallOEMInf but it does not seems suitable to me.

share|improve this question

1 Answer 1

Well it depends on the .inf file (some may not have un-installation function at all), but you could always try one of the following:

rundll32 setupapi.dll,InstallHinfSection DefaultUninstall 132 <driver.inf>

rundll32 advpack.dll,LaunchINFSection <driver.inf>,UnInstall

rundll32 syssetup.dll,SetupInfObjectInstallAction Uninstall.NT 4 <driver.inf>

(Of course, replace the filename, including quotes as necessary.)

share|improve this answer
    
Right, but I didn't find any entry that explicitly remove oemXX.inf generated by CopyInf entry. I am able to remove *.sys files that was copied to %SystemRoot%\System32\drivers with CopyFiles entry. There is Delfiles entry but only works when I know which files I need to remove. –  coelhudo Jul 26 '12 at 21:29
    
Are you asking about oem*.inf being automatically removed from \Windows\INF? I have never seen that happen, especially with things that are installed via .inf files instead of .exe or .msi installers. You could open them in a text-editor and delete the one(s) that no longer apply. –  Synetech Jul 26 '12 at 21:33
    
Yeap, I need this to be integrated into a NSIS (the installer from nullsoft) script. It has to be executed automatically when my app is uninstalled. –  coelhudo Jul 26 '12 at 21:47
    
Ah, I see. Well if you are writing your own (un)installer, then just add a line to delete the .inf file. You can query the InfPath value of the device in question under the HKLM\SYSTEM\ControlSet001\Control\Class registry branch to find out what the oem*.inf filename is for it. –  Synetech Jul 27 '12 at 0:22
    
I didn't find anything similar to the oem*.inf in that registry branch (windows xp and windows 7) tat was generated while installing. Is there any other place where I can find the corresponding oem name? –  coelhudo Jul 27 '12 at 20:57

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.