Я намереваюсь получить резервную копию vss (службы теневого копирования томов) с диска с помощью оболочки "alphavss" в c #, поскольку моя резервная копия будет отображаться на вкладке предыдущей версии этого диска (свойства> предыдущая версия).
я пишу ниже код:
IVssImplementation vssImplementation = VssUtils.LoadImplementation();
using (IVssBackupComponents vssBackup = vssImplementation.CreateVssBackupComponents())
{
vssBackup.InitializeForBackup(null);
vssBackup.GatherWriterMetadata();
vssBackup.SetContext(VssSnapshotContext.Backup);
vssBackup.SetBackupState(false, false, VssBackupType.Full, false);
Guid MyGuid_1 = vssBackup.StartSnapshotSet();
Guid MyGuid_2 = vssBackup.AddToSnapshotSet("F:\\");
vssBackup.PrepareForBackup();
vssBackup.DoSnapshotSet();
}
этот код обеспечивает резервное копирование VSS.
, но полученная резервная копия не отображается на вкладке предыдущей версии.
я изменил атрибуты в "SetContext"method:
vssBackup.SetContext(VssVolumeSnapshotAttributes.Persistent | VssVolumeSnapshotAttributes.ClientAccessible | VssVolumeSnapshotAttributes.NoAutoRelease | VssVolumeSnapshotAttributes.Differential | VssVolumeSnapshotAttributes.AutoRecover);
vssBackup.SetBackupState(false, false, VssBackupType.Full, false);
, но я получаю эту ошибку:
" Alphaleonis.Win32.Vss.VssUnsupportedContextException: 'Операция не поддерживается в текущем контексте. "
как мне изменить этот код, чтобы моя резервная копия отображалась на вкладке предыдущей версии его накопителя?
спасибо