You could get a head start by following these steps:
1. Run
procmon[
^] and enable process activity logging.
2. Right click on the inf file of your choice and click install in the context menu.
3. Observe what's happening in procmon.
4. From the above steps, you know what's Windows doing, and you now have to do this from your code.
I noticed from the procmon log that explorer is doing this when I right click an inf file called test.inf and click install:
Explorer.exe ProcessCreate "C:\Windows\System32\InfDefaultInstall.exe" "C:\Users\Rajesh\SomeLocation\test.inf"
What this basically means is that explorer is running an executable called InfDefaultInstall.exe, and passing the complete physical path of the .inf file as a command-line parameter.
You could use
ShellExecute[
^] or
CreateProcess[
^] to run the InfDefaultInstall.exe process.
Hope that helps.