Método IWDFUsbInterface::GetNumEndPoints (wudfusb.h)
[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum novo recurso está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Drivers universais do Windows devem usar UMDF 2. Para obter mais informações, consulte Introdução com UMDF.]
O método GetNumEndPoints recupera o número de pontos de extremidade (pipes) em uma interface USB.
Sintaxe
UCHAR GetNumEndPoints();
Retornar valor
GetNumEndPoints retorna o número de pontos de extremidade na interface USB.
Comentários
O método GetNumEndPoints é fornecido para conveniência porque um driver UMDF pode obter o número de pontos de extremidade do membro bNumEndpoints da estrutura USB_INTERFACE_DESCRIPTOR que o driver recupera quando chama o método IWDFUsbInterface::GetInterfaceDescriptor .
Exemplos
O exemplo de código a seguir recupera o número de pipes em uma interface USB e recupera tipos específicos de pipes.
HRESULT hr;
UCHAR NumEndPoints;
NumEndPoints = pIUsbInterface->GetNumEndPoints();
if (NumEndPoints != NUM_OSRUSB_ENDPOINTS) {
hr = E_UNEXPECTED;
}
if (SUCCEEDED(hr)) {
for (UCHAR PipeIndex = 0; PipeIndex < NumEndPoints; PipeIndex++) {
hr = pIUsbInterface->RetrieveUsbPipeObject(PipeIndex,
&pIUsbPipe);
if (FAILED(hr)) {
// Output an error.
}
else {
if ( pIUsbPipe->IsInEndPoint() && (UsbdPipeTypeBulk == pIUsbPipe->GetType()) ) {
pIUsbInputPipe = pIUsbPipe;
}
else if ( pIUsbPipe->IsOutEndPoint() && (UsbdPipeTypeBulk == pIUsbPipe->GetType()) )
{
pIUsbOutputPipe = pIUsbPipe;
}
else
{
SAFE_RELEASE(pIUsbPipe);
}
}
Requisitos
Requisito | Valor |
---|---|
Fim do suporte | Indisponível no UMDF 2.0 e posterior. |
Plataforma de Destino | Área de Trabalho |
Versão mínima do UMDF | 1.5 |
Cabeçalho | wudfusb.h (include Wudfusb.h) |
DLL | WUDFx.dll |