다음을 통해 공유


ICopyHookA::CopyCallback 메서드(shlobj.h)

셸이 폴더 또는 프린터 개체를 이동, 복사, 삭제 또는 이름을 바꿀 수 있는지 여부를 결정합니다.

구문

UINT CopyCallback(
  HWND  hwnd,
  UINT  wFunc,
  UINT  wFlags,
  PCSTR pszSrcFile,
  DWORD dwSrcAttribs,
  PCSTR pszDestFile,
  DWORD dwDestAttribs
);

매개 변수

hwnd

복사 후크 처리기가 처리기가 표시해야 할 사용자 인터페이스 요소의 부모로 사용해야 하는 창에 대한 핸들입니다. wFunc에서 FOF_SILENT 지정한 경우 메서드는 이 매개 변수를 무시해야 합니다.

wFunc

수행할 작업입니다. 이 매개 변수는 SHFILEOPSTRUCT 구조체의 wFunc 멤버 아래에 나열된 값 중 하나일 수 있습니다.

wFlags

작업을 제어하는 플래그입니다. 이 매개 변수는 SHFILEOPSTRUCT 구조체의 fFlags 멤버 아래에 나열된 값 중 하나 이상일 수 있습니다.

프린터 복사 후크의 경우 이 값은 Shellapi.h에 정의된 다음 값 중 하나입니다.

Description
PO_DELETE 프린터가 삭제되고 있습니다. pszSrcFile 은 지정된 프린터의 전체 경로를 가리킵니다.
PO_RENAME 프린터의 이름이 변경되고 있습니다. pszSrcFile 매개 변수는 프린터의 새 이름을 가리킵니다. pszDestFile 매개 변수는 이전 이름을 가리킵니다.
PO_PORTCHANGE 지원되지 않습니다. 사용하지 마십시오.
PO_REN_PORT 지원되지 않습니다. 사용하지 마십시오.

pszSrcFile

원본 폴더의 이름을 포함하는 문자열에 대한 포인터입니다.

dwSrcAttribs

원본 폴더의 특성입니다. 이 매개 변수는 헤더 파일에 정의된 파일 특성 플래그(FILE_ATTRIBUTE_*)의 조합일 수 있습니다. 파일 특성 상수를 참조하세요.

pszDestFile

대상 폴더의 이름을 포함하는 문자열에 대한 포인터입니다.

dwDestAttribs

대상 폴더의 특성입니다. 이 매개 변수는 헤더 파일에 정의된 파일 특성 플래그(FILE_ATTRIBUTE_*)의 조합일 수 있습니다. 파일 특성 상수를 참조하세요.

반환 값

셸이 작업을 수행해야 하는지 여부를 나타내는 정수 값을 반환합니다. 다음 중 하나

Description
IDYES 작업을 허용합니다.
IDNO 이 폴더에 대한 작업을 방지하지만 승인된 다른 작업(예: 일괄 복사 작업)을 계속합니다.
IDCANCEL 현재 작업을 방지하고 보류 중인 작업을 취소합니다.

설명

Shell은 모든 처리기가 호출되거나 그 중 하나가 IDNO 또는 IDCANCEL을 반환할 때까지 폴더 또는 프린터 개체에 등록된 각 복사 후크 처리기를 호출합니다.

폴더에 대한 복사 후크 처리기는 다음 키 아래에 등록됩니다.

HKEY_CLASSES_ROOT/Directory/Shellex/CopyHookHandlers/your_copyhook/{copyhook CLSID value}

프린터의 복사 후크 처리기는 다음 키 아래에 등록됩니다.

HKEY_CLASSES_ROOT/Printers/Shellex/CopyHookHandlers/your_copyhook/{copyhook CLSID value}

이 메서드가 호출되면 셸은 먼저 IShellExtInit 인터페이스를 사용하지 않고 ICopyHookA 인터페이스를 직접 초기화합니다.

요구 사항

요구 사항
헤더 shlobj.h