IStreamAsync::ReadAsync 메서드(shobjidl.h)
스트림에서 정보를 비동기적으로 읽습니다. 예를 들어 셸은 비동기적으로 전송할 때 파일 항목에 이 인터페이스를 구현합니다.
구문
HRESULT ReadAsync(
[out] void *pv,
[in] DWORD cb,
[out, optional] LPDWORD pcbRead,
[in] LPOVERLAPPED lpOverlapped
);
매개 변수
[out] pv
형식: void*
이 메서드가 성공적으로 반환되면 cb 바이트 길이이고 읽기 작업의 pcbRead 바이트 정보가 포함된 버퍼를 반환합니다.
[in] cb
형식:DWORD
스트림에서 읽을 바이트 수입니다.
[out, optional] pcbRead
형식: LPDWORD
이 메서드가 성공적으로 반환될 때 pv가 가리키는 버퍼에 읽은 실제 바이트 수를 나타내는 DWORD 값에 대한 포인터입니다. 이 값은 NULL일 수 있습니다.
[in] lpOverlapped
형식: LPOVERLAPPED
비동기 읽기 작업에 사용되는 정보를 포함하는 OVERLAPPED 구조체에 대한 포인터입니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
IStreamAsync::ReadAsync는 INPUT/output(I/O) 작업을 시작할 때 OVERLAPPED 구조체의 hEvent 멤버가 지정한 이벤트를 부호 없는 상태로 다시 설정해야 합니다.
이 메서드는 공용 ReadFile API를 중심으로 셸에서 씬 래퍼로 구현되었습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | shobjidl.h |