다음을 통해 공유


PCOPYFILE2_PROGRESS_ROUTINE 콜백 함수(winbase.h)

CopyFile2 함수와 함께 사용되는 애플리케이션 정의 콜백 함수입니다. 복사 또는 이동 작업의 일부가 완료되면 호출됩니다. PCOPYFILE2_PROGRESS_ROUTINE 형식은 이 콜백 함수에 대한 포인터를 정의합니다. CopyFile2ProgressRoutine 은 애플리케이션 정의 함수 이름의 자리 표시자입니다.

구문

PCOPYFILE2_PROGRESS_ROUTINE Pcopyfile2ProgressRoutine;

COPYFILE2_MESSAGE_ACTION Pcopyfile2ProgressRoutine(
  [in]           const COPYFILE2_MESSAGE *pMessage,
  [in, optional] PVOID pvCallbackContext
)
{...}

매개 변수

[in] pMessage

COPYFILE2_MESSAGE 구조체에 대한 포인터입니다.

[in, optional] pvCallbackContext

CopyFile2에 전달된 COPYFILE2_EXTENDED_PARAMETERS 구조체의 pvCallbackContext 멤버에 전달된 값의 복사본입니다.

반환 값

수행할 작업을 나타내는 COPYFILE2_MESSAGE_ACTION 열거형의 값입니다.

반환 코드/값 설명
COPYFILE2_PROGRESS_CONTINUE
0
복사 작업을 계속합니다.
COPYFILE2_PROGRESS_CANCEL
1
복사 작업을 취소합니다. CopyFile2 함수는 실패하고 반환 HRESULT_FROM_WIN32(ERROR_REQUEST_ABORTED) 되며 부분적으로 복사된 조각은 삭제됩니다.
COPYFILE2_PROGRESS_STOP
2
복사 작업을 중지합니다. CopyFile2 함수는 실패하고 반환 HRESULT_FROM_WIN32(ERROR_REQUEST_ABORTED) 되며 부분적으로 복사된 조각은 그대로 유지됩니다. copyFile2 함수에 전달된 COPYFILE2_EXTENDED_PARAMETERS 구조체의 dwCopyFlags 멤버에서 COPY_FILE_RESTARTABLE 설정된 경우에만 COPY_FILE_RESUME_FROM_PAUSE 플래그를 사용하여 작업을 다시 시작할 수 있습니다.
COPYFILE2_PROGRESS_QUIET
3
복사 작업을 계속하지만 이 작업에 대해 CopyFile2ProgressRoutine 콜백 함수를 다시 호출하지 마세요.
COPYFILE2_PROGRESS_PAUSE
4
복사 작업을 일시 중지합니다. 대부분의 경우 CopyFile2 함수는 실패하고 반환 HRESULT_FROM_WIN32(ERROR_REQUEST_PAUSED) 되며 부분적으로 복사된 조각은 그대로 유지됩니다(나중에 복사 작업을 다시 시작하는 데 사용되는 헤더 제외). 일시 중지 요청이 처리될 때 복사 작업이 완료된 경우 CopyFile2 호출이 성공적으로 완료되고 다시 시작 헤더가 기록되지 않습니다.

설명

COPYFILE2_CALLBACK_STREAM_FINISHED 메시지는 일시 중지된 복사본의 마지막 메시지입니다. COPYFILE2_CALLBACK_STREAM_FINISHED 메시지에 대한 응답으로 COPYFILE2_PROGRESS_PAUSE 반환되는 경우 추가 콜백이 전송되지 않습니다.

PCOPYFILE2_PROGRESS_ROUTINE 함수 포인터 형식을 사용하는 애플리케이션을 컴파일하려면 _WIN32_WINNT 매크로를 0x0601 이상으로 정의합니다. 자세한 내용은 Windows 헤더 사용을 참조하세요.

Windows 8 및 Windows Server 2012에서 이 함수는 다음 기술을 통해 지원됩니다.

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2012 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 winbase.h(Windows.h 포함)