What is PnPUtil.exe location in 64bit systems?

送分小仙女□ 提交于 2019-12-03 16:23:08

I recently came across this problem while trying to create an installer for ReplicatorG, which includes the Arduino drivers and some drivers specific to the Makerbot Replicator.

It seemed that there isn't any way to determine the location of PnPutil, and I instead had to acquire Microsoft's DIFx and use their redistributable DPinst.

There were a couple of strange things about DPinst that made it difficult to use. The first is that it didn't seem to run properly if it was located in a directory tree with spaces in the path. Who knows why. The second was that, because the Arduino drivers are unsigned, it needed to be run in legacy mode to keep from popping up a big, red dialog warning the user. To run it in legacy mode you use the /lm flag, but the flag must be lowercase. Again, it's unclear why.

In the end, I had the installer copy dpinst and each of the drivers to a folder in the temporary directory and then run dpinst. It pops up a nice little wizard and tells the user which drivers were installed.

The location of PnPUtil.exe seen from you installer application depends on the bitness of your installer:

  • 32bit installer on 32bit Windows: %WinDir%\System32
  • 64bit installer on 64bit Windows: %WinDir%\System32
  • 32bit installer on 64bit Windows: %WinDir%\Sysnative (Windows Vista and up)

More info here: http://www.samlogic.net/articles/sysnative-folder-64-bit-windows.htm

From C:\WIndows\winsxs\

dir /s PnPUtil.*

will scan subdirectories

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!