title: Missing VolumeGUIDs in Windows 2016 MountedDevices registry key
body: <p>Our software runs on Linux and we need to create a mapping between Linux device name(something like /dev/sda1) and VolumeGUID as it appears in Windows, since we are examining Windows disks/partitions.</p>
  
  <p>We get this information from MountedDevices Windows Registry subkey.</p>
  
  <p>Problem occurs on Windows 2016, where Volume{GUID}s are no longer listed in MountedDevices subkey.</p>
  
  <p>I managed to figure out, that Volume{GUID} is not a random GUID anymore(which is probably why they do not have to be stored it registry anymore), but it gets composed from data in the partition table.</p>
  
  <p>In case of GPT, the VolumeGUID is actually a GPT partition GUID, which is great, because I can easily reconstruct those VolumeGUIDs.</p>
  
  <p>In case of MBR, it is something like:</p>
  
  <p>\?\Volume{46e21ed5-0000-0000-0000-100000000000}\</p>
  
  <p>\?\Volume{46e21ed5-0000-0000-0000-104000000000}\</p>
  
  <p>\?\Volume{46e21ed5-0000-0000-0000-108000000000}\</p>
  
  <p>\?\Volume{46e21ed5-0000-0000-0000-20c000000000}\</p>
  
  <p>...</p>
  
  <p>Where 46e21ed5 is actually a disk signature, but I'm not sure what other fields mean. It looks like there's a partition offset (0x400 = 1024, and each partition is 1024MB in the provided example), but something does not add up for the last partition which has 20C00.</p>
  
  <p>Does anyone have more information on this subject and how these volume GUIDs get composed? (Google does not find any information on this subject)</p>
  
  <p>Regards</p>