다음을 통해 공유


WinUsb_WriteIsochPipeAsap 함수(winusb.h)

WinUsb_WriteIsochPipeAsap 버퍼의 콘텐츠를 등시 OUT 엔드포인트에 쓰기 위한 요청을 제출합니다.

구문

BOOL WinUsb_WriteIsochPipeAsap(
  [in]           WINUSB_ISOCH_BUFFER_HANDLE BufferHandle,
  [in]           ULONG                      Offset,
  [in]           ULONG                      Length,
  [in]           BOOL                       ContinueStream,
  [in, optional] LPOVERLAPPED               Overlapped
);

매개 변수

[in] BufferHandle

WinUsb_RegisterIsochBuffer 대한 이전 호출에 의해 등록된 전송 버퍼에 대한 불투명 핸들입니다.

[in] Offset

전송 시작을 기준으로 버퍼로 오프셋됩니다.

[in] Length

전송 버퍼의 길이(바이트)입니다.

[in] ContinueStream

마지막 보류 중인 전송 후 첫 번째 프레임에서 예약할 수 있는 경우에만 전송을 제출해야 했음을 나타냅니다.

[in, optional] Overlapped

비동기 작업에 사용되는 OVERLAPPED 구조체에 대한 포인터입니다.

반환 값

WinUsb_WriteIsochPipeAsap 작업이 성공하면 TRUE를 반환합니다. 그렇지 않으면 이 함수는 FALSE를 반환하고 호출자는 GetLastError를 호출하여 기록된 오류를 검색할 수 있습니다.

호출자가 ContinueStream 을 TRUE로 설정하면 Winusb.sys 하나 이상의 프레임을 삭제하지 않고 스트림을 계속하도록 전송을 예약할 수 없는 경우 전송이 실패합니다.

설명

WinUsb_WriteIsochPipeAsap USB 드라이버 스택에서 전송을 위한 시작 프레임 번호를 선택할 수 있습니다. 하나 이상의 전송이 엔드포인트에서 이미 보류 중인 경우 전송은 현재 보류 중인 마지막 전송의 마지막 프레임 번호 바로 다음에 프레임 번호로 예약됩니다.

WinUsb_WriteIsochPipeAsap 각 1ms 간격에서 호스트가 간격당 허용되는 최대 바이트를 보낼 수 있도록 전송 버퍼를 패킷화합니다. 최대 바이트는 전체 및 고속 엔드포인트에 대한 엔드포인트 설명자 및 SuperSpeed 엔드포인트에 대한 엔드포인트 도우미 설명자로 지정됩니다. 호출자가 디바이스에 데이터를 스트리밍하기 위해 여러 쓰기 요청을 제출하는 경우 전송 크기는 간격당 최대 바이트의 배수여야 합니다( WinUsb_QueryPipeEx 반환됨) * 8/interval.

기본 커널 모드 인터페이스에서 사용되는 전송 패키징으로 인해 애플리케이션 또는 드라이버에 대한 가장 낮은 대기 시간 알림은 1ms 간격입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8.1
지원되는 최소 서버 Windows Server 2012 R2
대상 플랫폼 유니버설
헤더 winusb.h(Winusb.h 포함)
라이브러리 Winusb.lib
DLL Winusb.dll

추가 정보

WinUSB 데스크톱 앱에서 USB 등시 전송 보내기

WinUSB 함수