Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Помимо доступа через интерфейс IVssBackupComponents с помощью объекта устройства копии, запрашивающий может сделать теневую копию доступной для других процессов как смонтированное устройство только для чтения.
Этот процесс называется открытием теневой копиии выполняется с помощью метода IVssBackupComponents::ExposeSnapshot.
Теневая копия может быть предоставлена в виде локального тома( назначаемая буква диска или связанная с подключенной папкой) или в качестве общей папки.
Чтобы проиллюстрировать, рассмотрим теневую копию тома в системе exposedSys, установленную на F:\, в корне которого расположены каталоги dirOne и dirTwo и файл FileOne.
Открытие локальной теневой копии
При подключении в качестве локального тома корень теневой копии всегда отображается в точке монтирования (буква диска или подключенная папка), и все файлы теневого копирования также видны.
Если теневая копия была локально открыта через подключенную папку C:\ShadowOfF, все файлы, которые находились на диске F:\ на момент создания теневой копии, будут доступны в C:\ShadowOfF. Изучение C:\ShadowOfF покажет два каталога, dirOne и dirTwo, а также один файл, fileOne, в разделе C:\ShadowOfF.
Возможный вызов для локального предоставления теневой копии может выглядеть следующим образом:
IVssBackupComponents *pReq;
VSS_ID snapID;
PWSTR wszExposed;
// .
// .
hr = pReg->ExposeSnapshot(
snapID, // VSS_ID SnapshotId,
NULL, // VSS_PWSZ wszPathFromRoot
VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY, // LONG lAttributes
L"C:\ShadowOfF", // VSS_PWSZ wszExpose
LPWSTR &wszExposed, // VSS_PWSZ* pwszExposed
);
Если теневая копия была успешно предоставлена локально, wsz Exposed должна содержать строку широкого символа "C:\ShadowOfF".
Затем теневая копия может быть отключена путем вызова IVssBackupComponentsEx2::UnexposeSnapshot.
Только постоянные теневые копии, то есть теневые копии, созданные с помощью VSS_CTX_NAS_ROLLBACK или VSS_CTX_APP_ROLLBACK, могут быть доступны локально.
Публикация теневой копии как удаленного общего ресурса
Кроме того, можно сделать теневую копию диска, подключенного в F:\, доступной как удаленный файловый ресурс, и отображать только данные в dirTwo как файловый ресурс dirTwoOfF.
В этом случае системы могут получить доступ к теневой копии файлов в F:\dirTwo путем сопоставления \\exposedSys\dirTwoOfF в качестве сетевого диска.
Вызов для выполнения удаленного предоставления доступа к теневой копии в общий доступ может быть следующим:
IVssBackupComponents *pReq;
VSS_ID snapID;
LPWSTR wszExposed;
// .
// .
hr = pReg->ExposeSnapshot(
snapID, // VSS_ID SnapshotId,
L"\dirTwo", // VSS_PWSZ wszPathFromRoot
VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY, // LONG lAttributes
L"dirTwoOfF", // VSS_PWSZ wszExpose
LPWSTR &wszExposed, // VSS_PWSZ* pwszExposed
);
Если теневая копия была успешно предоставлена удаленно, wszExposed должна содержать строку символов широкого типа "dirTwoOfF".
Любая система, сопоставляющая сетевую общую папку dirTwoOfF, может отключиться от нее так же, как и от любой обычной общей папки.
Обнаружение теневой копии
всплывшая теневая копия является такой копией, в которой теневая копия известна в пространстве имен диспетчера томов системы.
Это означает, что такие теневые копии можно найти так же, как и любой другой доступный, но не подключенный том, используя, например, FindFirstVolume и FindNextVolume.
Таким образом, открытые теневые копии также являются отражёнными теневыми копиями. Однако обратное не обязательно верно.
Если локально предоставленная теневая копия была демонтирована или система решила разъединить удалённую теневую копию, эта теневая копия больше не будет обеспечиваться. Однако до тех пор, пока теневая копия сохранялась, тома будут отображаться. Это означает, что они могут быть смонтированы как любой другой том в режиме только для чтения.