WinUsb_SetPipePolicy 함수(winusb.h)

WinUsb_SetPipePolicy 함수는 디바이스의 엔드포인트와 연결된 특정 파이프에 대한 정책을 설정합니다. 동기 작업입니다.

구문

BOOL WinUsb_SetPipePolicy(
  [in] WINUSB_INTERFACE_HANDLE InterfaceHandle,
  [in] UCHAR                   PipeID,
  [in] ULONG                   PolicyType,
  [in] ULONG                   ValueLength,
  [in] PVOID                   Value
);

매개 변수

[in] InterfaceHandle

파이프가 연결된 엔드포인트를 포함하는 인터페이스에 대한 불투명 핸들입니다.

첫 번째 인터페이스에서 엔드포인트와 연결된 파이프에 대한 정책을 설정하려면 WinUsb_Initialize 반환된 핸들을 사용합니다. 다른 모든 인터페이스의 경우 WinUsb_GetAssociatedInterface 검색된 대상 인터페이스에 대한 핸들을 사용합니다.

[in] PipeID

7비트 주소와 방향 비트로 구성된 8비트 값입니다. 이 매개 변수는 엔드포인트 설명자의 bEndpointAddress 필드에 해당합니다.

[in] PolicyType

변경할 정책 매개 변수를 지정하는 ULONG 변수입니다. Value 매개 변수는 winusbio.h에 정의된 정책 매개 변수에 대한 새 값을 포함합니다. 각 파이프 정책 및 결과 동작을 사용하는 방법에 대한 자세한 내용은 파이프 정책 수정을 위한 WinUSB 함수를 참조하세요.

[in] ValueLength

에 있는 버퍼의 크기(바이트)입니다.

[in] Value

PolicyType에서 지정하는 정책 매개 변수의 새 값입니다. 이 입력 매개 변수의 크기는 변경할 정책에 따라 달라집니다. 이 매개 변수의 크기에 대한 자세한 내용은 PolicyType 매개 변수에 대한 설명을 참조하세요.

반환 값

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

GetLastError 는 다음 오류 코드를 반환할 수 있습니다.

반환 코드 설명
ERROR_INVALID_HANDLE
호출자가 InterfaceHandle 매개 변수에서 NULL을 전달했습니다.
ERROR_INVALID_PARAMETER
호출자가 ValueLength 매개 변수의 정책 매개 변수 버퍼에 대해 잘못된 크기를 전달했습니다.
ERROR_NOT_ENOUGH_MEMORY
작업을 수행할 메모리가 부족했음을 나타냅니다.

요구 사항

   
대상 플랫폼 유니버설
헤더 winusb.h(Winusb.h 포함)
라이브러리 Winusb.lib
DLL Winusb.dll

추가 정보

WinUSB

WinUSB 함수

파이프 정책 수정을 위한 WinUSB 함수

WinUsb_GetPipePolicy

WinUsb_Initialize