What does a Windows kernel object name starting with \ ?? \ mean mean?
I am maintaining a legacy Windows application with user-space and kernel components. User space passes some file paths using registry keys.
Currently, the code finds the full path to the file, then appends \??\
to it before writing it to the registry, so the path ends with something like \??\C:\foo.bar
. The driver passes this path to InitializeObjectAttributes()
and ZwCreateFile()
, which successfully opens the file (or creates it as appropriate).
I'm familiar with the prefix \\.\
as an alias for \DosDevices\
but not \??\
, and that's not something that can be Googled. Does anyone know what this means?
source to share