How to make elevated programs recognize network drives



One of the useful tools that Windows offers is the ability to assign drive letters to the network locations. You can use the Map Network Drive command of Windows Explorer or AB Commander to create the network drives. After a network drive has been created, you can use it just like any other drive: browse its contents, copy file to or from it, and so on.

A problem may occur, however, if you use Windows Vista or Windows 7 and need to access the network drive from an application that runs elevated (a.k.a. as administrator). For example, when you run AB Commander as usual, it runs as the standard user, and displays any network drive that you might have created, for example:

AB Commander shows a network drive in the Computer folder

However, unlike Windows Explorer that always runs as a standard user, AB Commander offers you an option to run it as administrator. (You can do it by using the Restart as Administrator command on the Tools menu.) If you restart AB Commander as administrator, you might be surprised to see no network drive in its window:

Why is the network drive missing?

(You can recognize that AB Commander is running as administrator by the presence of the Administrator label in its title bar).

To understand why the network drive is not visible to the programs running as administrator, we have to consider how Windows handles the standard and administrator user access internally. In simple terms, when UAC (User Account Control) is enabled, Windows creates a split personality for your user account: one with the standard user's access rights to do the the regular tasks, and another one with the full administrative access to the system. When you log in to the computer, Windows tries hard to create the impression that these two personalities are the same: they share the login name and password, the desktop and documents, settings and preferences, and so on. However, when it comes to mapping the network drives, Windows prefers to treat them as separate accounts (for security reasons). That's why the network drives created when you wear the hat of the standard user do not automatically become available when you put the administrator's hat on. This Microsoft article explains it all in detail.

Such behavior is rather counter-productive: after all, the administrator account is supposed to have more access to the system, it's supposed to be able to see and do all things that are available to the standard user, plus some more. In this case, however, the network drive created by the standard user remains out of reach of the administrator.

In any case, there is a way to force Windows to make the network drives available to both the standard and administrator accounts automatically. All you need to do is run Registry Editor (regedit.exe), locate the following key:

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System

and create a new DWORD entry with the name EnableLinkedConnections and value 1:

The value EnableLinkedConnections in the registry

Caution: If you are not very experienced with Registry Editor, please be extra careful: it's a powerful tool that can do a lot of damage to your system if used carelessly.

After you've added the EnableLinkedConnections value to the Registry, restart the computer, and after that the network drives you create should become available to the elevated applications, as well.

Happy networking!

Update for Windows 8

It appears that the EnableLinkedConnections setting is not always working correctly on Windows 8: if a standard user has created a mapped network drive pointing to a subfolder of a shared folder (for example, drive Z: connected to //server/share/subfolder), then the elevated user will see the drive Z:, but it will be pointing to the root share, //server/share/, not to the subfolder. (It sure looks like a bug in Windows 8.)

If this error creates a problem for you, then it's better not to use the EnableLinkedConnections registry fix at all. Instead, just create the mapped network drive twice: first time using a standard user's account, and the second time using an administrator account. Sure, it's twice the work, but it should work correctly in all situations.

Good luck!

Another update for Windows 8

It looks like Microsoft released a hotfix KB 2878604 that corrects this problem for Windows 8.

If you want to link to this article, you can use this HTML code: <a href="https://www.winability.com/how-to-make-elevated-programs-recognize-network-drives/">How to make elevated programs recognize network drives</a>

More information