GetVolumeNameForVolumeMountPoint () возвращает GUID тома? - PullRequest
0 голосов
/ 26 апреля 2010

Возвращает ли GetVolumeNameForVolumeMountPoint () идентификатор GUID тома в c ++?

GetVolumeNameForVolumeMmountPoint()
{
LPCTSTR lpszvolumeMountPoint,
LPTSTR lpszVolumeName,
DWORDcchBufferLength,
}

Я имею в виду, если я использую съемный диск. останется ли lpszVolumeName таким же на том же компьютере? Возвращает ли он определенный идентификатор для определенного тома каждый раз, когда я вставляю диск в USBport моего компьютера. И убедитесь, что разные тома диска получат разные результаты? Большое спасибо!

Ответы [ 2 ]

0 голосов
/ 20 января 2014

MSDN вызовите имя пользователя как GUID, но это не так. Я проверяю это следующим шагом:

  1. клонирование диска A на диск B с помощью док-станции ORICO USB HDD;
  2. Подключите только DiskA к ПК с док-станцией для жесткого диска, WinXP назначит ему букву 'G' и GUID: {ea044c37-816f-11e3-bea8-005056c00008}, как показывает регистр

    "\\DosDevices\\G:"=hex:a7,5e,f9,19,00,7e,00,00,00,00,00,00
    "\\??\\Volume{ea044c37-816f-11e3-bea8-005056c00008}"=hex:a7,5e,f9,19,00,7e,00,\
    
  3. Замените DiskA на DiskB и подключите его к ПК, буква драйвера такая же, как G, и GUID та же {ea044c37-816f-11e3-bea8-005056c00008};

  4. Соедините DiskA и DiskB с док-станцией для жестких дисков (2 отсека), после чего GUID DiskB изменился на {ea044c39-816f-11e3-bea8-005056c00008}
0 голосов
/ 28 апреля 2010

Я нашел некоторую документацию о диспетчере монтирования, в которой говорится, что GUID постоянно связан с томом и сохраняется при перезапусках системы.

...