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 는 다음 오류 코드를 반환할 수 있습니다.
반환 코드 | 설명 |
---|---|
|
호출자가 InterfaceHandle 매개 변수에서 NULL을 전달했습니다. |
|
호출자가 ValueLength 매개 변수의 정책 매개 변수 버퍼에 대해 잘못된 크기를 전달했습니다. |
|
작업을 수행할 메모리가 부족했음을 나타냅니다. |
요구 사항
대상 플랫폼 | 유니버설 |
헤더 | winusb.h(Winusb.h 포함) |
라이브러리 | Winusb.lib |
DLL | Winusb.dll |