Support for \\?\Volume{GUID}\

English support forum

Moderators: white, sheep, Hacker, Stefan2

seb-
Senior Member
Senior Member
Posts: 272
Joined: 2011-11-15, 06:14 UTC
Location: DE\BN

Support for \\?\Volume{GUID}\

Post by *seb- » 2014-05-14, 13:47 UTC

While browsing the web for solutions for the problem that my USB Drive changes its drive letter, i found out the following:

you can address media in Windows (similar to Linux /media/medianame) by addressing it using the GUID (which is of course different for each media on every system/installation).

That means if you execute "mountvol.exe" it will show you all connected Medias GUID.

Then you can access this path in Windows Explorer by pasting

\\?\Volume{GUID}\

and it will open the root of the drive.


For me this seems very practical, because i do not have Administrative privileges to change the Drive letter once it is (by accident or by random...) changed again.

I always have to adjust my totalCommander-Synctool presets then - or change it manually each time.

Its very frustrating.

However if pasting that GUID-based path into Totalcommander, TC does not understand it.

Is it easy to make TC support these kind of "hardlinks" to Removeable media?

Then i could simply store the path in the Sync Preset and hopefully would never ever again need to adjust it either in the wincmd.ini or manually in the sync window.

- I know its some weird workaround for a totally different root cause (drive letter changes), but as i cant change the drive letter easily (or is there a way that does not require Admin privileges or additional 3rd party software that i have not yet found?) it seeems a viable option to me.

What do you think about this?

br
seb

User avatar
MVV
Power Member
Power Member
Posts: 8121
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV » 2014-05-14, 14:09 UTC

seb-,
Actually you can make a mount point to your USB volume, and it will look just like a regular folder located in a place you like. Once created, such mount point will show volume contents to your USB volume regardless of drive letter assigned to it. So you can create such mount point in the same place for all your computers and refer your USB volume by path to such mount point.

Such mount point may be created via disk management console (where you change volume drive letter), or via console tool mountvol, also you can create an empty folder and set its target path attribute via NTLinks plugin, it supports volume GUIDs.

Please keep in mind that volume GUIDs for the same volume are different in different Windows installations (they are assigned by Windows somehow and are not stored in volume) so it has no sense to sync such setting between multiple computers.

seb-
Senior Member
Senior Member
Posts: 272
Joined: 2011-11-15, 06:14 UTC
Location: DE\BN

Post by *seb- » 2014-05-14, 15:19 UTC

Thanks for your reply MVV!
MVV wrote:seb-,
Such mount point may be created via disk management console
Yeah i read about this, but disk management console seems to require admin privileges. Symlinks also require Admin rights :(

I'll try it tomorrow.
MVV wrote: Please keep in mind that volume GUIDs for the same volume are different in different Windows installations (...)
I also found this out already ;)

would be easier if it worked similar to linux :)

User avatar
MVV
Power Member
Power Member
Posts: 8121
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV » 2014-05-14, 16:32 UTC

I don't know if symlinks support volume GUIDs, but mount point (or junction with GUID path) may be created using NTLinks w/o admin rights.

seb-
Senior Member
Senior Member
Posts: 272
Joined: 2011-11-15, 06:14 UTC
Location: DE\BN

Post by *seb- » 2014-05-15, 05:23 UTC

After a lot of tries with mountvol and guid path i realized it does not work ;-)

But

mklink /j junction guid_path

indeed works without admin privileges. So that helps for the moment. Thanks for that good hint!






But anyway i'd still appreciate to hear if it is easy to implement into TC that GUID Paths are directly supported? :-)





brs

User avatar
MVV
Power Member
Power Member
Posts: 8121
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV » 2014-05-15, 05:56 UTC

Yes, actually mountvol only supports just GUIDs, w/o subpaths, and it not only creates a junction, it also stores information about it somewhere in registry (that's why it requires admin rights).

BTW I just tested TC with volume GUID: cd \\?\Volume{b88f9aff-6b87-11e2-9279-806e6f6e6963}\ doesn't work but cd \\?\Volume{b88f9aff-6b87-11e2-9279-806e6f6e6963}\Docs\ does! And I can go up and see root items, but Ctrl+R causes error. I think it should be easy to fix since Windows itself supports such paths.

seb-
Senior Member
Senior Member
Posts: 272
Joined: 2011-11-15, 06:14 UTC
Location: DE\BN

Post by *seb- » 2014-05-15, 06:10 UTC

Thats nice to hear, i'm using a subpath anyway.

But still i'm now served with the junction that your hint gave me :-)

Lets see wether CD to root \\?\Volume\{GUID}\ is fixed soon :-)

User avatar
MVV
Power Member
Power Member
Posts: 8121
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV » 2014-05-15, 09:47 UTC

seb- wrote:Lets see wether CD to root \\?\Volume\{GUID}\ is fixed soon :-)
I think you should report it as a bug.

BTW I've found funny thing: cd \\?\Volume{b88f9aff-6b87-11e2-9279-806e6f6e6963}\Docs\..\ opens drive root. :D

seb-
Senior Member
Senior Member
Posts: 272
Joined: 2011-11-15, 06:14 UTC
Location: DE\BN

Post by *seb- » 2014-05-15, 10:15 UTC

MVV wrote: I think you should report it as a bug.

done

guRed
Junior Member
Junior Member
Posts: 2
Joined: 2018-05-16, 09:05 UTC

Any news on this topic?

Post by *guRed » 2018-05-16, 09:09 UTC

I vote for implementing support for \\?\Volume{GUID}\ in TC

User avatar
MVV
Power Member
Power Member
Posts: 8121
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV » 2018-05-17, 05:03 UTC

Works for me here (9.20b2):
cd \\?\Volume{1d819ae2-ff62-11e7-89b2-005056c00008}\
cd \\?\Volume{1d819ae2-ff62-11e7-89b2-005056c00008}\Docs\
It is funny that autocomplete works when I type just path with volume GUID and doesn't work when I type cd with path with volume GUID (but works with paths w/o GUIDs).

User avatar
DrShark
Power Member
Power Member
Posts: 1111
Joined: 2006-11-03, 22:26 UTC
Location: Kyiv, 68/262

Post by *DrShark » 2018-05-17, 09:32 UTC

MVV wrote:Works for me here (9.20b2)
Tried on Vista 32-bit in the command line of TC 9.20 beta 3: cd \\?\Volume{GUID_by_mountvol}\ - doesn't work. However, \\?\Volume{GUID_by_mountvol}\ opens the location in Explorer.
Android 4.3.1 no root, kernel 08.09.2016; Vista Home Premium SP2 rus 32 bit
TC #149847 Personal licence

Cuz we're all in this together, We're here to make it right

guRed
Junior Member
Junior Member
Posts: 2
Joined: 2018-05-16, 09:05 UTC

Post by *guRed » 2018-05-17, 13:31 UTC

MVV wrote:Works for me here (9.20b2):
cd \\?\Volume{1d819ae2-ff62-11e7-89b2-005056c00008}\
cd \\?\Volume{1d819ae2-ff62-11e7-89b2-005056c00008}\Docs\
It is funny that autocomplete works when I type just path with volume GUID and doesn't work when I type cd with path with volume GUID (but works with paths w/o GUIDs).
I use 9.12 (latest non-beta) and neither command works. So there must be some changes in the latest 9.20b2
When will 9.20 be released?

User avatar
Horst.Epp
Power Member
Power Member
Posts: 3058
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Post by *Horst.Epp » 2018-05-17, 13:40 UTC

guRed wrote:
MVV wrote:Works for me here (9.20b2):
cd \\?\Volume{1d819ae2-ff62-11e7-89b2-005056c00008}\
cd \\?\Volume{1d819ae2-ff62-11e7-89b2-005056c00008}\Docs\
It is funny that autocomplete works when I type just path with volume GUID and doesn't work when I type cd with path with volume GUID (but works with paths w/o GUIDs).
I use 9.12 (latest non-beta) and neither command works. So there must be some changes in the latest 9.20b2
When will 9.20 be released?
The newest is 9.20b3 and there is no problem using TC betas.
Windows 10 x64 October 2018 Update
Version 1809 (OS Build 17763.104)
TC 9.21a x64 and x86, Everything 1.4.1.918 (x64)

User avatar
DrShark
Power Member
Power Member
Posts: 1111
Joined: 2006-11-03, 22:26 UTC
Location: Kyiv, 68/262

Post by *DrShark » 2018-05-17, 15:26 UTC

It's interesting: on Vista 32-bit TC 9.20 beta 3 opens such paths if used as a parameter to %COMMANDER_EXE%:
%COMMANDER_EXE% /L=\\?\Volume{GUID_by_mountvol}\
TC also opens shortcuts (LNKs) created by Explorer for such paths.
But it doesn't work if used with cd command from a command line or a button bar.

Also, TC only shows internal context menu for files there, while Explorer shows full own menu even with items from shell extensions.
Android 4.3.1 no root, kernel 08.09.2016; Vista Home Premium SP2 rus 32 bit
TC #149847 Personal licence

Cuz we're all in this together, We're here to make it right

Post Reply