> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GetDeviceInfo

> GetDeviceInfo

# GetDeviceInfo

Acessa informações estáticas sobre todas as propriedades e funcionalidades de um dispositivo de entrada.

## Sintaxe

```cpp theme={null}
HRESULT GetDeviceInfo(
    const GameInputDeviceInfo** info
);
```

### Parâmetros

*info*   \_Outptr\_\
Tipo: GameInputDeviceInfo\*\*

As informações do dispositivo associadas ao IGameInputDevice.

### Valor retornado

Tipo: HRESULT

Resultado da função.

## Comentários

A memória do método `GetDeviceInfo` não pertence ao aplicativo. A memória permanecerá acessível se a instância de `IGameInput` for mantida ativa pelo aplicativo. Depois que a referência ao objeto `IGameInput` é liberada, a memória deixa de existir.

O exemplo de código a seguir demonstra como determinar se um volante tem embreagem.

```cpp theme={null}
bool HasClutch(IGameInputDevice* wheel) noexcept
{
    const GameInputDeviceInfo* wheelInfo = nullptr;
    const bool succeeded = wheel->GetDeviceInfo(&wheelInfo);
    assert(succeeded);
    assert(wheelInfo->racingWheelInfo);

    const bool hasClutch = wheelInfo->racingWheelInfo->hasClutch;

    return hasClutch;
}
```

## Requisitos

**Cabeçalho:** GameInput.h

[Visão geral do GameInput](/pt-BR/build/core-features/common/input/overviews/input-overview)\
[GameInputDeviceInfo](/pt-BR/reference/input/gameinput/structs/gameinputdeviceinfo)\
[IGameInputDevice](/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice)

## Histórico de versões

| Versão | Alterações |
| - | - |
| **v3** | Assinatura inalterada. [GameInputDeviceInfo](/pt-BR/reference/input/gameinput/structs/gameinputdeviceinfo) estendida: `controllerInfo` adicionado (substituindo os campos separados de contagem+informações de eixos/botões/chaves e `uiNavigationInfo`); `inputReportCount`/`inputReportInfo` e `outputReportCount`/`outputReportInfo` adicionados; `hapticFeedbackMotorInfo` removido. |
| **v2** | Assinatura inalterada. [GameInputDeviceInfo](/pt-BR/reference/input/gameinput/structs/gameinputdeviceinfo) estendida com `revisionNumber`, `hardwareVersion`, `firmwareVersion`, `containerId` e `sensorsInfo`. |
| **v1** | Assinatura inalterada. [GameInputDeviceInfo](/pt-BR/reference/input/gameinput/structs/gameinputdeviceinfo) foi significativamente simplificada: `infoSize`, `interfaceNumber`, `collectionNumber`, `capabilities` e os campos de toque/háptica/cadeia de caracteres/descritor foram removidos; `supportedSystemButtons`, `displayName` e `pnpPath` foram adicionados. |
| **v0** | Introduzido. |


## Related topics

- [GetDeviceInfo](/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getdeviceinfo.md)
- [GameInputDeviceInfo](/reference/input/gameinput/structs/gameinputdeviceinfo.md)
- [GameInputRawDeviceReportInfo](/reference/input/gameinput/structs/gameinputrawdevicereportinfo.md)
- [GameInputSensorsInfo](/reference/input/gameinput/structs/gameinputsensorsinfo.md)
- [GameInputGamepadInfo](/reference/input/gameinput/structs/gameinputgamepadinfo.md)
