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


Функция DecryptFileA (winbase.h)

Расшифровывает зашифрованный файл или каталог.

Синтаксис

BOOL DecryptFileA(
  [in] LPCSTR lpFileName,
       DWORD  dwReserved
);

Параметры

[in] lpFileName

Имя файла или каталога для расшифровки.

Вызывающий объект должен иметь права доступа FILE_READ_DATA, FILE_WRITE_DATA, FILE_READ_ATTRIBUTES, FILE_WRITE_ATTRIBUTES и SYNCHRONIZE . Дополнительные сведения см. в разделе Безопасность файлов и права доступа.

dwReserved

Защищены; значение должно быть равно нулю.

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

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

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

Комментарии

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

Если lpFileName указывает файл, доступный только для чтения, функция завершается ошибкой и GetLastError возвращает ERROR_FILE_READ_ONLY. Если lpFileName указывает каталог, содержащий файл только для чтения, функции выполняются успешно, но каталог не расшифровывается.

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

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

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

Примечание

Заголовок winbase.h определяет DecryptFile как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

   
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header winbase.h (включая Windows.h)
Библиотека Advapi32.lib
DLL Advapi32.dll
Набор API ext-ms-win-advapi32-encryptedfile-l1-1-0 (представлено в Windows 8)

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

CreateFile

EncryptFile

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

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