FindFirstStreamW 함수(fileapi.h)

첫 번째 스트림을 지정된 파일 또는 디렉터리에 ::$DATA 스트림 형식으로 열거합니다.

이 작업을 트랜잭션 작업으로 수행하려면 FindFirstStreamTransactedW 함수를 사용합니다.

구문

HANDLE FindFirstStreamW(
  [in]  LPCWSTR            lpFileName,
  [in]  STREAM_INFO_LEVELS InfoLevel,
  [out] LPVOID             lpFindStreamData,
        DWORD              dwFlags
);

매개 변수

[in] lpFileName

정규화된 파일 이름입니다.

[in] InfoLevel

반환된 데이터의 정보 수준입니다. 이 매개 변수는 STREAM_INFO_LEVELS 열거형 형식의 값 중 하나입니다.

의미
FindStreamInfoStandard
0
데이터는 WIN32_FIND_STREAM_DATA 구조로 반환됩니다.

[out] lpFindStreamData

파일 스트림 데이터를 수신하는 버퍼에 대한 포인터입니다. 이 데이터의 형식은 InfoLevel 매개 변수의 값에 따라 달라집니다.

dwFlags

다음에 사용하도록 예약됩니다. 이 매개 변수는 0이어야 합니다.

반환 값

함수가 성공하면 반환 값은 FindNextStreamW 함수에 대한 후속 호출에 사용할 수 있는 검색 핸들입니다.

함수가 실패하는 경우 반환 값은 INVALID_HANDLE_VALUE입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

스트림을 찾을 수 없으면 함수가 실패하고 GetLastErrorERROR_HANDLE_EOF (38)을 반환합니다.

파일 시스템이 스트림을 지원하지 않으면 함수가 실패하고 GetLastErrorERROR_INVALID_PARAMETER (87)을 반환합니다.

설명

FindFirstStreamW 함수는 검색 핸들을 열고 지정된 파일 또는 디렉터리의 첫 번째 $DATA 스트림에 대한 정보를 반환합니다. 파일의 경우 항상 명명되지 않은 기본 데이터 스트림인 "::$DATA"입니다. 디렉터리에는 기본적으로 $DATA 스트림이 없으며 명명되지 않은 데이터 스트림을 가질 수 없지만 데이터 스트림을 만든 후에는 명명된 데이터 스트림이 설정되었을 수 있습니다. 검색 핸들이 설정되면 FindNextStreamW 함수 호출에 사용하여 지정된 파일 또는 디렉터리의 다른 스트림을 검색합니다. 검색 핸들이 더 이상 필요하지 않으면 FindClose 함수를 사용하여 닫아야 합니다.

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
 

SMB 3.0은 64K보다 작거나 같은 스트림 목록을 지원합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 fileapi.h(Windows.h, WinBase.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

파일 관리 함수

FindClose

FindFirstStreamTransactedW

FindNextStreamW

STREAM_INFO_LEVELS

WIN32_FIND_STREAM_DATA