UpdateDriverForPlugAndPlayDevices() return 2 for one PC

I used this function to install a virtual serial port driver. It works
for many many PCs but now I’ve seen one PC failed with error 2
(ERROR_FILE_NOT_FOUND). I also tried manual installation and I got the
same error. Checking setupapi.log didn’t give me any clue. I can’t work
on the PC directly so I can’t do much debugging on it. The driver is
unsigned and I clicked the “ignore” button on the driver signing warning
dialog. Are there any thing, such as system settings, third party
software, etc. that I should watch out for?

Thanks in advance.
-matts