ReadEncryptedFileRaw 함수(winbase.h)

암호화된 파일을 백업(내보내기)합니다. 이는 파일을 암호화된 상태로 유지하면서 백업 및 복원 기능을 구현하기 위한 EFS(암호화된 파일 시스템) 함수 그룹 중 하나입니다.

구문

DWORD ReadEncryptedFileRaw(
  [in]           PFE_EXPORT_FUNC pfExportCallback,
  [in, optional] PVOID           pvCallbackContext,
  [in]           PVOID           pvContext
);

매개 변수

[in] pfExportCallback

내보내기 콜백 함수에 대한 포인터입니다. 시스템은 전체 파일을 읽을 때까지 파일 데이터 블록을 콜백 함수에 전달할 때마다 콜백 함수를 여러 번 호출합니다. 자세한 내용은 ExportCallback을 참조하세요.

[in, optional] pvCallbackContext

애플리케이션 정의 및 할당된 컨텍스트 블록에 대한 포인터입니다. 시스템은 콜백 함수가 애플리케이션별 데이터에 액세스할 수 있도록 이 포인터를 매개 변수로 콜백 함수에 전달합니다. 이는 구조체일 수 있으며 암호화된 파일의 백업 복사본을 포함할 파일에 대한 핸들과 같이 애플리케이션에 필요한 모든 데이터를 포함할 수 있습니다.

[in] pvContext

시스템 정의 컨텍스트 블록에 대한 포인터입니다. 컨텍스트 블록은 OpenEncryptedFileRaw 함수에 의해 반환됩니다. 수정하지 마십시오.

반환 값

함수가 성공하면 반환 값이 ERROR_SUCCESS.

함수가 실패하면 WinError.h에 정의된 0이 아닌 오류 코드를 반환합니다. FormatMessageFORMAT_MESSAGE_FROM_SYSTEM 플래그와 함께 사용하여 오류에 대한 일반 텍스트 설명을 가져올 수 있습니다.

설명

백업 중인 파일의 암호가 해독되지 않습니다. 암호화된 상태로 백업됩니다.

암호화된 파일을 백업하려면 OpenEncryptedFileRaw를 호출하여 파일을 엽니다. 그런 다음 ReadEncryptedFileRaw를 호출하여 애플리케이션 정의 내보내기 콜백 함수의 주소를 전달합니다. 시스템은 전체 파일의 내용을 읽고 백업할 때까지 이 콜백 함수를 여러 번 호출합니다. 백업이 완료되면 CloseEncryptedFileRaw 를 호출하여 리소스를 해제하고 파일을 닫습니다. 내보내기 콜백 함수를 선언하는 방법에 대한 자세한 내용은 ExportCallback 을 참조하세요.

암호화된 파일을 복원하려면 OpenEncryptedFileRaw를 호출하고 ulFlags 매개 변수에 CREATE_FOR_IMPORT 지정합니다. 그런 다음 WriteEncryptedFileRaw를 호출하여 애플리케이션 정의 가져오기 콜백 함수의 주소를 전달합니다. 시스템은 전체 파일의 내용을 읽고 복원할 때까지 이 콜백 함수를 여러 번 호출합니다. 복원이 완료되면 CloseEncryptedFileRaw 를 호출하여 리소스를 해제하고 파일을 닫습니다. 가져오기 콜백 함수를 선언하는 방법에 대한 자세한 내용은 ImportCallback 을 참조하세요.

이 함수는 암호화된 파일만 백업하기 위한 것입니다. 암호화되지 않은 파일의 백업은 BackupRead 를 참조하세요.

Windows 8, Windows Server 2012 이상에서 이 함수는 다음 기술에서 지원됩니다.

기술 지원됨
SMB(서버 메시지 블록) 3.0 프로토콜 Yes
SMB 3.0 TFO(투명 장애 조치(failover)) No
SO(스케일 아웃 파일 공유)를 사용하는 SMB 3.0 No
CsvFS(클러스터 공유 볼륨 파일 시스템) No
ReFS(Resilient File System) No
 

SMB 3.0은 연속 가용성 기능이 있는 공유에서 EFS를 지원하지 않습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP Professional [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winbase.h(Windows.h 포함)
라이브러리 Advapi32.lib
DLL Advapi32.dll
API 세트 ext-ms-win-advapi32-encryptedfile-l1-1-0(Windows 8 도입)

추가 정보

BackupRead

CloseEncryptedFileRaw

파일 암호화

파일 관리 함수

OpenEncryptedFileRaw

WriteEncryptedFileRaw