Функция ClusterGetVolumePathName (resapi.h)
[ClusterGetVolumePathName доступно для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. Вместо этого используйте GetVolumePathName.]
Извлекает точку подключения тома в кластере, где подключен указанный путь.
Синтаксис
BOOL ClusterGetVolumePathName(
[in] LPCWSTR lpszFileName,
[out] LPWSTR lpszVolumePathName,
[in] DWORD cchBufferLength
);
Параметры
[in] lpszFileName
Указатель на строку входного пути. В этом пути допустимы как абсолютные, так и относительные имена файлов и каталогов, например "..".
Если указать относительный каталог или имя файла без квалификатора тома, ClusterGetVolumePathName возвращает букву диска текущего тома.
Если этот параметр является пустой строкой "", функция завершается сбоем, но последняя ошибка имеет значение ERROR_SUCCESS.
[out] lpszVolumePathName
Указатель на строку, которая получает точку подключения тома для входного пути.
[in] cchBufferLength
Длина выходного буфера в WCHAR.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Следующие примеры могут помочь. В этих примерах "Имя_файла.Ext" существует, но "Путь\это\\not\exist" — нет.
-
Входные данные: "C:\ClusterStorage\Volume31\Filename.Ext"
Выходные данные: "C:\ClusterStorage\Volume31"
-
Входные данные: "\?\C:\ClusterStorage\Volume31\Filename.Ext"
Выходные данные: "\?\C:\ClusterStorage\Volume31"
-
Входные данные: "C:\ClusterStorage\Volume31\Path\that\does\not\exist"
Выходные данные: "C:\ClusterStorage\Volume31"
-
Входные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}\ClusterStorage\Volume31\Filename.Ext"
Выходные данные: "\?\Volume{deadbeef-895e-4a1d-9d64-9b82fa068d76}\ClusterStorage\Volume31"
-
Входные данные: "\\?\GLOBALROOT\Device\Harddisk0\Partition1\ClusterStorage\Volume31\Filename.Ext"
Выходные данные: "\?\GLOBALROOT\Device\Harddisk0\Partition1\ClusterStorage\Volume31"
-
Входные данные: "\?\GLOBALROOT\Device\HarddiskVolume1\ClusterStorage\Volume31\Filename.Ext"
Выходные данные: "\?\GLOBALROOT\Device\HarddiskVolume1\ClusterStorage\Volume31"
#define UNICODE 1
#include <ResApi.h>
Функция ClusterGetVolumePathName должна вызываться из узла кластера.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Datacenter |
Целевая платформа | Windows |
Header | resapi.h |
Библиотека | ResUtils.Lib |
DLL | ResUtils.Dll |
См. также раздел
Резервное копирование и восстановление конфигурации отказоустойчивого кластера с помощью VSS