Under Windows: AlbumRoots uuid(s)?

Paul A. Norman paul at paulanorman.info
Thu Apr 27 15:46:09 BST 2023


So far my research suggests that this Album Root reference:  volumeid:?uuid=4261fb3f
is actually a Windows NTFS 0x based number which may be called by some – not so much a UUID, but:

c:> fsutil fsinfo volumeinfo e:
"Volume Serial Number : 0x4261fb3f

There is also:

c:> fsutil fsinfo volumeinfo e:
"NTFS Volume Serial Number :        0x164262164261fb3f

... which finishes with the same eight digits as the Volume Serial Number 

And again the more usually used ...

E:>>mountvol.exe
...
 \\?\Volume{dd637aff-5761-4467-80c3-bfcb62c500e8}\
        E:\

It seems to be a non trivial matter under Windows, to find the drive letter associated with a  “Volume Serial Number” as Digikam is using.

Some background...

https://www.digital-detective.net/documents/Volume%20Serial%20Numbers.pdf

I can do a small FreePascal utility for this, but just needed to ask first again, how or where is Digikam storing the root drive letter, or how is it getting it from the “Volume Serial Number” = volumeid:?uuid=xxxxxxxx 
stored as the album root(s) under Windows OS please?

TIA

Kind regards,
Paul


On 25/04/2023 7:02 pm, Paul Norman wrote:Volume Serial Number

Apologies...

done somehow in .ccp somewhere? :-)

done somehow in .cpp somewhere?

On 25/04/2023 3:01 pm, Paul Norman wrote:

Hi,

Under Windows you can normally do things like:

E:>>mountvol.exe
...
 \\?\Volume{dd637aff-5761-4467-80c3-bfcb62c500e8}\
        E:\

And then ...

start \\?\Volume{dd637aff-5761-4467-80c3-bfcb62c500e8}\

And it would open the appropriate volume in File Explorer in my case E:\  

My entry in Digikam for the same drive shows in digikam4.> AlbumRoots  as:

Identifier
volumeid:?uuid=4261fb3f

And obviously 

start \\?\Volume{4261fb3f}\

— Is not going to work.

How is: 

Digikam > Settings > Configure - digikam > Collections

 from only volumeid:?uuid=4261fb3f achieving showing drive E: as the root please?

Using Digikam as our prime DAM, I want to be able to query the Sqlite (from Lazarus - FreePascal https://www.lazarus-ide.org/ ) and get the path to any image please.
— I can do this so far using digikam4.db.> Albums and a lookup from there on  AlbumRoots > albumRoot , with digikam4.db.> Images > album (etc.) and that gets me right up to getting the correct drive letter (or  \\?\Volume{<uuid>}\) under Windows.

I have not yet found anything in the Digikam data .db(s), digikam_systemrc or digikamrc, to cross-reference volumeid:?uuid=4261fb3f with, and assume it must be being done somehow in .ccp somewhere?

Any pointers appreciated please.

Kindest regards,

Paul


---
https://PaulANorman.info
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-users/attachments/20230428/f3714e7d/attachment.htm>


More information about the Digikam-users mailing list