Функция ClusterGetVolumeNameForVolumeMountPoint (resapi.h)
[ClusterGetVolumeNameForVolumeMountPoint доступен для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. Вместо этого используйте GetVolumeNameForVolumeMountPoint.]
Извлекает GUID тома кластера для тома, связанного с указанной точкой подключения общего тома кластера (CSV) (буква диска, путь GUID тома или подключенная папка).
Синтаксис
BOOL ClusterGetVolumeNameForVolumeMountPoint(
[in] LPCWSTR lpszVolumeMountPoint,
[out] LPWSTR lpszVolumeName,
[in] DWORD cchBufferLength
);
Параметры
[in] lpszVolumeMountPoint
Указатель на строку, содержащую путь к подключенной папке (например, "Y:\MountX") или букву диска (например, "X:\"). Строка должна заканчиваться обратной косой чертой (\).
[out] lpszVolumeName
Указатель на строку, получающую путь GUID тома. Этот путь имеет вид "\?\Volume{GUID}", где GUID — это GUID , идентифицирующий том. Если для тома имеется несколько путей GUID тома, возвращается только первый из них в кэше диспетчера подключений. Возвращаемая строка имеет формат, необходимый для IVssBackupComponents::AddToSnapshotSet и IVssBackupComponents::IsVolumeSupported.
[in] cchBufferLength
Длина выходного буфера в WCHAR. Допустимый размер буфера для размещения максимально возможного пути GUID тома составляет 51 символ.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError. Если входной CSV-файл не подключен локально, вызов завершится ошибкой ERROR_CSV_VOLUME_NOT_LOCAL (5951).
Комментарии
Следующие примеры могут помочь. В этих примерах "Filename.Ext" существует, но "File\that\does\not\exist" и "Directory\that\does\not\exist" — нет.
-
Входные данные: "C:\ClusterStorage\Volume31\"
Выходные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}"
-
Входные данные: "C:\ClusterStorage\Volume31\"
Выходные данные: функция завершается сбоем и задает последнюю ошибку ERROR_CSV_VOLUME_NOT_LOCAL (5951).
Примечание Том CSV, указанный для входных данных, не подключен локально для прямого ввода-вывода. -
Входные данные: "\?\C:\ClusterStorage\Volume31\Filename.Ext"
Выходные данные: функция завершается сбоем и задает последнюю ошибку ERROR_INVALID_PARAMETER (87).
-
Входные данные: "C:\ClusterStorage\Volume31\File\that\does\not\exist"
Выходные данные. Функция завершается сбоем и задает последнюю ошибку ERROR_INVALID_NAME (123).
-
Входные данные: "C:\ClusterStorage\Volume31\Directory\that\does\not\exist\"
Выходные данные. Функция завершается сбоем и задает последнюю ошибку ERROR_INVALID_NAME (123).
-
Входные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}\"
Выходные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}"
-
Входные данные: "\?\Volume{de8b99bb-895e-4a1d-9d64-9b82fa068d76}\ClusterStorage\Volume31\"
Выходные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}"
Примечание Том в выходных данных представляет собой CSV-файл и отличается от системного тома, который был частью входных данных. -
Входные данные: "\?\GLOBALROOT\Device\Harddisk0\Partition1\ClusterStorage\Volume31\"
Выходные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}"
-
Входные данные: "\?\GLOBALROOT\Device\HarddiskVolume1\ClusterStorage\Volume31\"
Выходные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}"
#define UNICODE 1
#include <ResApi.h>
Функция ClusterGetVolumeNameForVolumeMountPoint должна вызываться из узла кластера.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Datacenter |
Целевая платформа | Windows |
Header | resapi.h |
Библиотека | ResUtils.Lib |
DLL | ResUtils.Dll |
См. также раздел
Резервное копирование и восстановление конфигурации отказоустойчивого кластера с помощью VSS
Функции резервного копирования и восстановления
GetVolumeNameForVolumeMountPoint