none
regular users prompted to install a driver on login

    问题

  • Any idea how to disable Windows prompting regular users to install a driver?  I think it's the ATI Mobility Radeon HD 2600 XT driver (but it's already installed).  It installs without prompting (according to the system tray) if I login as a user in the administrator group.

    Some processes I can see.  I think it's using the Task Scheduler, but I don't see anything in the task history:

    dcom/plugnplay/power svchost.exe
      rundll32.exe C:\Windows\system32\newdev.dll,pDiDeviceInstallAction \\.\pipe\PNP_Device_Install_Pipe_2.{6d9101a7-62fa-44fa-9b4e-0c8d179de38b} "pci\ven_1002&dev_9583&subsys_0083106b&rev_00\4&1e528e0b&0&0008"
        "C:\Windows\System32\dinotify.exe" pnpui.dll,SimplifiedDINotification No
        "C:\Windows\System32\newdev.exe" "00000001" \\.\pipe\PNP_Device_Install_Pipe_1.{a202f14d-0ff7-4210-a3a1-2fbffed19f69} "pci\ven_1002&dev_9583&subsys_0083106b&rev_00\4&1e528e0b&0&0008" (if successful)

    task scheduler svchost.exe
      taskeng.exe {ee75aa48-447a-4cfe-8a44-e173ef5d12be}    (maybe not)
      consent.exe



    device-installer


    • 已编辑 JS2010 2011年8月15日 22:42
    2011年8月15日 21:08

答案

  • Here's how I disabled the newdev prompt (set ConfigFlags to 0).  You have to run it as System:

    reg add "HKLM\System\CurrentControlSet\Enum\PCI\VEN_1002&DEV_9583&SUBSYS_0083106B&REV_00\4&1E528E0B&0&0008" /f /v ConfigFlags /d 0 /t reg_dword

    When ConfigFlags is 0x20000, it starts that whole process.  Maybe it should be added to Autoruns.  Newdev didn't seem to do much anyway, at least procmon didn't show anything being written to, besides the log and registry entry.  Here's what it wrote in setupapi.dev.log.  I guess this is an old mechanism from Windows XP?  But this is a 2011 64-bit driver.

    I think it's a 'finish-install action': http://msdn.microsoft.com/en-us/library/ff544940%28v=vs.85%29.aspx (a new feature in Vista actually)

    Running that newdev command as admin didn't work.

     

    [Boot Session: 2011/08/24 12:42:51.855]

    >>>  [Finish Install Action - PCI\VEN_1002&DEV_9583&SUBSYS_0083106B&REV_00\4&1E528E0B&0&0008]
    >>>  Section start 2011/08/24 13:03:18.969
         dvi: {Build Driver List} 13:03:18.984
         dvi:      Searching for hardware ID(s):
         dvi:           pci\ven_1002&dev_9583&subsys_0083106b&rev_00
         dvi:           pci\ven_1002&dev_9583&subsys_0083106b
         dvi:           pci\ven_1002&dev_9583&cc_030000
         dvi:           pci\ven_1002&dev_9583&cc_0300
         dvi:      Searching for compatible ID(s):
         dvi:           pci\ven_1002&dev_9583&rev_00
         dvi:           pci\ven_1002&dev_9583
         dvi:           pci\ven_1002&cc_030000
         dvi:           pci\ven_1002&cc_0300
         dvi:           pci\ven_1002
         dvi:           pci\cc_030000&dt_1
         dvi:           pci\cc_030000
         dvi:           pci\cc_0300&dt_1
         dvi:           pci\cc_0300
         cpy:      Policy is set to make all digital signatures equal.
         dvi:      Processing a single INF: 'C:\Windows\INF\oem54.inf'
         inf:      Opened PNF: 'C:\Windows\System32\DriverStore\FileRepository\c7116524.inf_amd64_neutral_ff71b1c9f6244903\c7116524.inf' ([strings])
         dvi: {Build Driver List - exit(0x00000000)} 13:03:19.249
         dvi: Selected driver installs from section [ati2mtag_M76] in 'c:\windows\system32\driverstore\filerepository\c7116524.inf_amd64_neutral_ff71b1c9f6244903\c7116524.inf'.
         dvi: Class GUID of device remains: {4d36e968-e325-11ce-bfc1-08002be10318}.
         dvi: Set selected driver complete.
         dvi: {DIF_FINISHINSTALL_ACTION} 13:03:19.265
         dvi:      Using exported function 'DisplayClassInstaller' in module 'C:\Windows\system32\DispCI.dll'.
         dvi:      Class installer == DispCI.dll,DisplayClassInstaller
         dvi:      Using exported function 'CoInstallerEntry' in module 'C:\Windows\system32\coinst.dll'.
         dvi:      CoInstaller 1 == coinst.dll,CoInstallerEntry
         dvi:      CoInstaller 1: Enter 13:03:19.468
         inf:           Opened PNF: 'C:\Windows\INF\oem54.inf' ([strings])
         inf:           Opened PNF: 'C:\Windows\INF\oem54.inf' ([strings])
         dvi:      CoInstaller 1: Exit
         dvi:      Class installer: Enter 13:03:19.702
         dvi:      Class installer: Exit
         dvi:      Default installer: Enter 13:03:19.702
         dvi:      Default installer: Exit
         dvi: {DIF_FINISHINSTALL_ACTION - exit(0x00000000)} 13:03:19.733
    <<<  Section end 2011/08/24 13:03:19.733
    <<<  [Exit status: SUCCESS]







    • 已标记为答案 JS2010 2011年8月24日 19:00
    2011年8月24日 17:57
  • The hardware id keeps changing on me when I upgrade the driver.  Here's the script I came up with.  I used devcon:

    rem disable annoying device finish install action in ati/amd video drivers
    rem must run as the System user

    rem have to quote the = and | symbols using ^
    for /f "delims=: " %%i in ('devcon find ^=display ^| find /i "PCI"') do reg add "HKLM\System\CurrentControlSet\Enum\%%i" /f /v ConfigFlags /d 0 /t reg_dword




    • 已标记为答案 JS2010 2012年3月28日 21:33
    • 已编辑 JS2010 2012年3月28日 21:38
    2012年3月28日 21:31

全部回复

  • Hi,

    Is your question to give regular users rights to install the hardware (or any hardware) in question. Or to disable the prompt?

    Ven_1002 is ATI  Dev_9583 is the Radeon HD 2600 XT, so you guessed right.

     

    Kind regards,

    Stephan Schwarz.


    If one of these posts answered your question or issue, please click on "Mark as answer".

    My Blog | Twitter: @Schwarz_Stephan | MCTS, MCITP, MCC.
    2011年8月15日 21:42
  • Disable the prompt.

     

    2011年8月15日 22:01
  • Hi,

    If you want to disable the promt, please just disable UAC.

    Also, I suggest to allow stardard user to install this kind of driver rather than disable UAC to avoid the potential risk.

    http://technet.microsoft.com/en-us/library/cc770453(WS.10).aspx 


    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. ”
    2011年8月18日 10:09
  • Yep disabling UAC will stop that prompt.

     

    1. Open User Accounts by clicking the Start button Picture of the Start button, clicking Control Panel, clicking User Accounts and Family Safety (or clicking User Accounts, if you are connected to a network domain), and then clicking User Accounts.

    2. Click Turn User Account Control on or off.(move the bar all the way to the bottom) Administrator permission required If you are prompted for an administrator password or confirmation, type the password or provide confirmation.

    3. Select the Use User Account Control (UAC) to help protect your computer check box to turn on UAC, or clear the check box to turn off UAC, and then click OK.


    2011年8月18日 13:24
  • Here's how I disabled the newdev prompt (set ConfigFlags to 0).  You have to run it as System:

    reg add "HKLM\System\CurrentControlSet\Enum\PCI\VEN_1002&DEV_9583&SUBSYS_0083106B&REV_00\4&1E528E0B&0&0008" /f /v ConfigFlags /d 0 /t reg_dword

    When ConfigFlags is 0x20000, it starts that whole process.  Maybe it should be added to Autoruns.  Newdev didn't seem to do much anyway, at least procmon didn't show anything being written to, besides the log and registry entry.  Here's what it wrote in setupapi.dev.log.  I guess this is an old mechanism from Windows XP?  But this is a 2011 64-bit driver.

    I think it's a 'finish-install action': http://msdn.microsoft.com/en-us/library/ff544940%28v=vs.85%29.aspx (a new feature in Vista actually)

    Running that newdev command as admin didn't work.

     

    [Boot Session: 2011/08/24 12:42:51.855]

    >>>  [Finish Install Action - PCI\VEN_1002&DEV_9583&SUBSYS_0083106B&REV_00\4&1E528E0B&0&0008]
    >>>  Section start 2011/08/24 13:03:18.969
         dvi: {Build Driver List} 13:03:18.984
         dvi:      Searching for hardware ID(s):
         dvi:           pci\ven_1002&dev_9583&subsys_0083106b&rev_00
         dvi:           pci\ven_1002&dev_9583&subsys_0083106b
         dvi:           pci\ven_1002&dev_9583&cc_030000
         dvi:           pci\ven_1002&dev_9583&cc_0300
         dvi:      Searching for compatible ID(s):
         dvi:           pci\ven_1002&dev_9583&rev_00
         dvi:           pci\ven_1002&dev_9583
         dvi:           pci\ven_1002&cc_030000
         dvi:           pci\ven_1002&cc_0300
         dvi:           pci\ven_1002
         dvi:           pci\cc_030000&dt_1
         dvi:           pci\cc_030000
         dvi:           pci\cc_0300&dt_1
         dvi:           pci\cc_0300
         cpy:      Policy is set to make all digital signatures equal.
         dvi:      Processing a single INF: 'C:\Windows\INF\oem54.inf'
         inf:      Opened PNF: 'C:\Windows\System32\DriverStore\FileRepository\c7116524.inf_amd64_neutral_ff71b1c9f6244903\c7116524.inf' ([strings])
         dvi: {Build Driver List - exit(0x00000000)} 13:03:19.249
         dvi: Selected driver installs from section [ati2mtag_M76] in 'c:\windows\system32\driverstore\filerepository\c7116524.inf_amd64_neutral_ff71b1c9f6244903\c7116524.inf'.
         dvi: Class GUID of device remains: {4d36e968-e325-11ce-bfc1-08002be10318}.
         dvi: Set selected driver complete.
         dvi: {DIF_FINISHINSTALL_ACTION} 13:03:19.265
         dvi:      Using exported function 'DisplayClassInstaller' in module 'C:\Windows\system32\DispCI.dll'.
         dvi:      Class installer == DispCI.dll,DisplayClassInstaller
         dvi:      Using exported function 'CoInstallerEntry' in module 'C:\Windows\system32\coinst.dll'.
         dvi:      CoInstaller 1 == coinst.dll,CoInstallerEntry
         dvi:      CoInstaller 1: Enter 13:03:19.468
         inf:           Opened PNF: 'C:\Windows\INF\oem54.inf' ([strings])
         inf:           Opened PNF: 'C:\Windows\INF\oem54.inf' ([strings])
         dvi:      CoInstaller 1: Exit
         dvi:      Class installer: Enter 13:03:19.702
         dvi:      Class installer: Exit
         dvi:      Default installer: Enter 13:03:19.702
         dvi:      Default installer: Exit
         dvi: {DIF_FINISHINSTALL_ACTION - exit(0x00000000)} 13:03:19.733
    <<<  Section end 2011/08/24 13:03:19.733
    <<<  [Exit status: SUCCESS]







    • 已标记为答案 JS2010 2011年8月24日 19:00
    2011年8月24日 17:57
  • Here's another one, AMD Radeon HD 6750M:

    reg add "HKLM\System\CurrentControlSet\Enum\PCI\VEN_1002&DEV_6741&SUBSYS_6741106B&REV_00\4&199C4783&0&0008" /f /v ConfigFlags /d 0 /t reg_dword

    Yep, they're both bootcamp drivers.  I think the vendor just wants 'my video card installed' to appear in the system tray.

     

    2011年9月1日 17:24
  • Great info, thank you!

     

    Used this info to solve problems with uacprompt from HP(broadcom) 2070 bluetoothdriver first time users log on.

     

    I put this in a .regfile and runs it after bluetoothinstall in my task sequence:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_03F0&PID_231D\6&147ff563&0&6]

    "ConfigFlags"=dword:00000000

     

    2011年10月6日 14:16
  • Quite surprised at some of the advice given here - disable UAC, give users power to install drivers... seriously??

    This is an issue with ATi's drivers, this guy has written a very thorough blog post that explains the cause:

    http://iboyd.net/index.php/2010/06/29/ati-radeon-causes-a-uac-prompt-at-user-logon/

    As for resolving it, you need to write a script that sets one registry value to 0, no disabling of UAC or elevating user's rights needed. Here's a Powershell script I've written, you need to set this as a startup script so that it runs in the LOCAL SYSTEM context and therefore, has rights to set the value to 0 (normal users do not have write access to this key). Since the key path could in theory be anything depending on the machine and the particular card used, you need to find the path of the correct key first - Ive used the setupact.log to find this.

    Get-Content C:\windows\setupact.log | Select-String “PCI” -casesensitive | foreach {
    $PCILoc = $_.tostring().indexof(“\”)
    $PCILen = $_.tostring().length
    $PCILoc = $PCILen – $PCILoc
    $DispReg = $_.tostring().substring($_.tostring().length – $PCILoc, $PCILoc)
    $FullKey = “HKLM:\SYSTEM\CurrentControlSet\Enum\PCI” + $DispReg
    if ((Test-Path $FullKey) -eq “True”)
        {Set-ItemProperty $FullKey -name ConfigFlags -value 0}
    }

    Hope that helps

    • 已建议为答案 mattboyd 2012年3月22日 14:04
    2012年2月15日 13:13
  • The hardware id keeps changing on me when I upgrade the driver.  Here's the script I came up with.  I used devcon:

    rem disable annoying device finish install action in ati/amd video drivers
    rem must run as the System user

    rem have to quote the = and | symbols using ^
    for /f "delims=: " %%i in ('devcon find ^=display ^| find /i "PCI"') do reg add "HKLM\System\CurrentControlSet\Enum\%%i" /f /v ConfigFlags /d 0 /t reg_dword




    • 已标记为答案 JS2010 2012年3月28日 21:33
    • 已编辑 JS2010 2012年3月28日 21:38
    2012年3月28日 21:31
  • Hi Jerre951,

    May I ask which version of the HP Broadcom 2070 driver you are using?

    Thanks.

    2012年12月12日 22:37