FCICreate 함수(fci.h)
FCICreate 함수는 FCI 컨텍스트를 만듭니다.
구문
HFCI DIAMONDAPI FCICreate(
[in, out] PERF perf,
[in] PFNFCIFILEPLACED pfnfcifp,
[in] PFNFCIALLOC pfna,
[in] PFNFCIFREE pfnf,
[in] PFNFCIOPEN pfnopen,
[in] PFNFCIREAD pfnread,
[in] PFNFCIWRITE pfnwrite,
[in] PFNFCICLOSE pfnclose,
[in] PFNFCISEEK pfnseek,
[in] PFNFCIDELETE pfndelete,
[in] PFNFCIGETTEMPFILE pfnfcigtf,
[in] PCCAB pccab,
[in, optional] void *pv
);
매개 변수
[in, out] perf
오류 정보를 수신하는 ERF 구조체에 대한 포인터입니다.
[in] pfnfcifp
파일이 캐비닛에 배치되는 시기를 알리는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. FNFCIFILEPLACED 매크로를 사용하여 함수를 선언해야 합니다.
[in] pfna
메모리를 할당하는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. FNFCIALLOC 매크로를 사용하여 함수를 선언해야 합니다.
[in] pfnf
이전에 할당된 메모리를 해제하는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. FNFCIFREE 매크로를 사용하여 함수를 선언해야 합니다.
[in] pfnopen
파일을 여는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. 함수는 FNFCIOPEN 매크로를 사용하여 선언해야 합니다.
[in] pfnread
파일에서 데이터를 읽을 애플리케이션 정의 콜백 함수에 대한 포인터입니다. 함수는 FNFCIREAD 매크로를 사용하여 선언해야 합니다.
[in] pfnwrite
파일에 데이터를 쓰는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. 함수는 FNFCIWRITE 매크로를 사용하여 선언해야 합니다.
[in] pfnclose
파일을 닫을 애플리케이션 정의 콜백 함수에 대한 포인터입니다. 함수는 FNFCICLOSE 매크로를 사용하여 선언해야 합니다.
[in] pfnseek
파일 포인터를 특정 위치로 이동하는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. FNFCISEEK 매크로를 사용하여 함수를 선언해야 합니다.
[in] pfndelete
파일을 삭제하는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. 함수는 FNFCIDELETE 매크로를 사용하여 선언해야 합니다.
[in] pfnfcigtf
임시 파일 이름을 검색하는 애플리케이션 정의 콜백 함수에 대한 포인터입니다. 함수는 FNFCIGETTEMPFILE 매크로를 사용하여 선언해야 합니다.
[in] pccab
캐비닛을 만들기 위한 매개 변수를 포함하는 CCAB 구조체에 대한 포인터입니다.
[in, optional] pv
콜백 함수에 전달되는 애플리케이션 정의 값에 대한 포인터입니다.
반환 값
함수가 성공하면 NULL 이 아닌 HFCI 컨텍스트 포인터를 반환합니다. 그렇지 않으면 NULL입니다.
확장 오류 정보는 ERF 구조에 제공됩니다.
설명
FCI는 여러 동시 컨텍스트를 지원합니다. 따라서 동일한 애플리케이션 내에서 동시에 여러 캐비닛을 만들거나 추출할 수 있습니다. 애플리케이션이 다중 스레드인 경우 각 스레드에서 다른 컨텍스트를 실행할 수도 있습니다. 그러나 애플리케이션은 여러 스레드에서 동일한 컨텍스트를 동시에 사용할 수 없습니다. 예를 들어 동일한 FCI 컨텍스트를 사용하여 두 개의 서로 다른 스레드에서 FCIAddFile 을 호출할 수 없습니다.
요구 사항
대상 플랫폼 | Windows |
헤더 | fci.h |
라이브러리 | Cabinet.lib |
DLL | Cabinet.dll |