Vista Registry – NoDriveTypeAutoRun and AutoPlay

Vista Registry – NoDriveTypeAutoRun and AutoPlay

This registry hack will control what happens to AutoPlay when you put a CD into the drive caddy.  Researching NoDriveTypeAutoRun, reminds me of a tip that I was given for playing chess; when you find a good move, look for an even better one.  Previously I had known about plain AutoRun, but now I have found a more flexible registry setting, NoDriveTypeAutoRun.

Topics for NoDriveTypeAutoRun

 ♦

Background to AutoPlay

Media Change Notification (MCN) messages from the CD-ROM driver, trigger the AutoPlay behaviour of the CD.  However, if these messages are suppressed then the CD will not automatically start playing.  You can disable AutoPlay by configuring the appropriate value of NoDriveTypeAutoRun (or NoDriveAutoRun) in the registry.

The benefit of using NoDriveTypeAutoRun, rather than NoDriveAutoRun, is that you can fine-tune which drives you wish to disable.  For example, you can disable all network and all unknown drives from running AutoPlay, but allow CD-ROM drives to run AutoPlay, and thus start automatically.

Possible Values for NoDriveTypeAutoRun

Here below, is a table of the hex values to control AutoPlay on a variety of drives.  The entries are a bitmapped value. To disable AutoPlay on a particular type of drive, set the bit representing that type of drive to 1.  If you want to disable more than one type of drive, sum the hexadecimal values of the representative bits.

In XP, the default value for NoDriveTypeAutoRun is 0x95 (149).  You calculate the figure by summing: 0x1 (unknown types), 0x80 (unknown types), 0x4 (floppy drives), and 0x10 (network drives).  In Vista the default is 0x91 (145).  Similar to XP, but without the floppy drive setting.

0x1

Disables AutoPlay on drives of unknown type.

0x4

Disables AutoPlay on removable drives.

0x8

Disables AutoPlay on fixed drives.

0x10

Disables AutoPlay on network drives.

0x20

Disables AutoPlay on CD-ROM drives.

0x40

Disables AutoPlay on RAM drives.

0x80

Disables AutoPlay on drives of unknown type.

0xFF

Disables AutoPlay on all types of drives.

Recommended: Solarwinds’ Permissions Analyzer – Free Active Directory ToolFree Permissions Analyzer for Active Directory

I like thePermissions Analyzer because it enables me to see WHO has permissions to do WHAT at a glance.  When you launch this tool it analyzes a users effective NTFS permissions for a specific file or folder, and takes into account network share access, then displays the results in a nifty desktop dashboard!

Think of all the frustration that this free SolarWinds utility saves when you are troubleshooting authorization problems for user’s access to a resource.  Give this permissions monitor a try – it’s free!

Download SolarWinds’ Free Permissions Analyser – Active Directory Tool

Registry Instructions for NoDriveTypeAutoRun

One interesting feature of NoDriveTypeAutoRun is that you can set the value in either HKLM** or HKCU.  If you go overboard and configure both, then the Local_Machine over-rides the Current_User.

  1. Type ‘regedit’ in the Start Search dialog box. (See more details on starting regedit)
  2. Navigate to this path:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
  3. If necessary create a dword called NoDriveTypeAutoRunNoDriveTypeAutoRun Control Autoplay with registry setting
  4. Set NoDriveTypeAutoRun = 000000FF 
  5. A value of 000000FF (decimal 255) disables AutoRun on all drives.
  6. Refer to the above table, and use a Hexadecimal calculator to compute the most suitable value for your machine.
  7. There is no need to logoff; the NoDriveTypeAutoRun setting should take effect straightaway.

Key Learning Points

  • Do you find the NoDriveTypeAutoRun value in HKCU** or HKLM? 
    Answer: Both! If there is a conflict then HKLM wins.
  • Should you add a value, or modify an existing setting? 
    Answer: In Vista modify to a hex value = 000000FF.  Consult the above table for greater precision.
    Answer: In XP or W2K3 you may need to create a DWORD called: NoDriveTypeAutoRun.  Then set it a hex value of 000000FF  (Decimal 255)
  • Is NoDriveTypeAutoRun a String Value or a DWORD? 
    Answer: DWORD.
  • Do you need to Restart, or merely Log Off / On? 
    Answer: Neither, changes to AutoPlay should occur as soon as you enter the value in the registry.
  • Tip: Add this Value, NoDriveTypeAutoRun to Regedit’s Favorites menu

** HKLM is an abbreviation of HKEY_LOCAL_MACHINE, and HKCU is shorthand for HKEY_CURRENT_USER.  These acronyms are so well-known that you can even use them in .reg files, Vista will understand and obey the registry instruction.

Guy Recommends:  A Free Trial of the Network Performance Monitor (NPM)Review of Orion NPM v11.5 v11.5

SolarWinds’ Orion performance monitor will help you discover what’s happening on your network.  This utility will also guide you through troubleshooting; the dashboard will indicate whether the root cause is a broken link, faulty equipment or resource overload.

What I like best is the way NPM suggests solutions to network problems.  Its also has the ability to monitor the health of individual VMware virtual machines.  If you are interested in troubleshooting, and creating network maps, then I recommend that you try NPM now.

Download a free trial of Solarwinds’ Network Performance Monitor

Creating a .Reg File

This page explains how to create, and then edit .reg files for your computer.  As it’s easy to import the contents of a .reg file into the registry, do take extra care with procedures.  Example NoDriveTypeAutoRun  .reg file.

If you like this page then please share it with your friends

 


Windows Vista Registry Tweaks: