Поделиться через


Функция DuplicateEncryptionInfoFile (winefs.h)

Копирует метаданные EFS из одного файла или каталога в другой.

Синтаксис

DWORD DuplicateEncryptionInfoFile(
  [in]           LPCWSTR                     SrcFileName,
  [in]           LPCWSTR                     DstFileName,
  [in]           DWORD                       dwCreationDistribution,
  [in]           DWORD                       dwAttributes,
  [in, optional] const LPSECURITY_ATTRIBUTES lpSecurityAttributes
);

Параметры

[in] SrcFileName

Имя файла или каталога, из которого копируются метаданные EFS. Этот исходный файл или каталог должны быть зашифрованы.

[in] DstFileName

Имя файла или каталога, в который копируются метаданные EFS.

Этот целевой файл или каталог не обязательно шифровать перед вызовом этой функции; Однако если эта функция успешно завершится, она будет зашифрована.

Если значение SrcFileName указывает файл, значение этого параметра также должно указывать файл и аналогичным образом для каталогов. Если файл или каталог с именем, указанным этим параметром, не существует, будет создан файл или каталог (в зависимости от того, указывает ли SrcFileName файл или каталог).

[in] dwCreationDistribution

Описывает открытие целевого файла или каталога, определяемого значением параметра DstFileName . Ниже приведены допустимые значения этого параметра.

Значение Значение
CREATE_ALWAYS
2
Всегда создавайте целевой файл или каталог. Все переданные в этом параметре значения, отличные от CREATE_NEW , будут обрабатываться как CREATE_ALWAYS.
CREATE_NEW
1
Создавайте целевой файл или каталог только в том случае, если они еще не существуют. Если оно существует и указано это значение, эта функция завершится ошибкой.

[in] dwAttributes

Атрибуты файла назначения или каталога. Атрибут FILE_READ_ONLY в настоящее время не обрабатывается этой функцией.

[in, optional] lpSecurityAttributes

Указатель на структуру SECURITY_ATTRIBUTES , указывающую атрибуты безопасности целевого файла или каталога, если они еще не существуют. Если указать значение NULL, файл или каталог получает дескриптор безопасности по умолчанию. Списки управления доступом в дескрипторе безопасности по умолчанию для файла или каталога наследуются от родительского каталога.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.

Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки. Полный список кодов ошибок см. в разделе Системные коды ошибок или в файле заголовка WinError.h.

Комментарии

Для вызова этой функции EFS требуется эксклюзивный доступ к целевому файлу или каталогу. Если этот доступ не предоставлен, эта функция завершится ошибкой.

Вызывающий объект должен иметь ключ EFS для исходного файла или каталога и по крайней мере READ_ATTRIBUTE ACL для исходного файла или каталога.

Указанный исходный и целевой файл или каталоги должны находиться на одном компьютере; В противном случае будет возвращена ошибка.

В Windows 8 и Windows Server 2012 эта функция поддерживается следующими технологиями.

Технология Поддерживается
Протокол SMB 3.0 Да
Прозрачная отработка отказа (TFO) SMB 3.0 Нет
SMB 3.0 с масштабируемыми общими папками (SO) Нет
Файловая система общего тома кластера (CSVFS) Нет
Восстанавливаемая файловая система (ReFS) Нет
 

SMB 3.0 не поддерживает EFS в общих папках с возможностью непрерывной доступности.

Требования

   
Минимальная версия клиента Windows XP Professional [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header winefs.h (включая Windows.h)
Библиотека Advapi32.lib
DLL Advapi32.dll

См. также раздел

Шифрование файлов

Функции управления файлами

SECURITY_ATTRIBUTES