Monday, July 4, 2016

What are those \??\ (backslash double question mark backslash) paths in Windows?

In certain places within Windows (usually the Registry), you'll see paths that begin with double question marks between backslashes, \??\. These are NT Object Manager object names. The Object Manager is a kernel-mode system that organizes various objects into a tree-like hierarchy. In other places, you may have seen path-like things that start with \Device\. Those are also Object Manager paths, and everything in the \??\ folder is actually a symbolic link to other places in the hierarchy. \??\C: links to the HarddiskVolumeN object for the volume holding your C drive, where N is a number. Only certain parts of Windows are designed to accept Object Manager paths, so you can't use them anywhere you would a normal path.

You can explore this hierarchy with the WinObj tool from Sysinternals.

Note that these paths are completely different than \\?\ paths, which are literal extended-length paths that you can use to access or create file system objects with weird characters in the name.

Based on my Super User answer.

No comments:

Post a Comment