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

# IGameInputDevice::SetRawDeviceFeature

> Envoie un rapport de fonctionnalité brut au périphérique.

Envoie un rapport de fonctionnalité brut au périphérique.

## Syntaxe

```cpp theme={null}
HRESULT SetRawDeviceFeature(
    IGameInputRawDeviceReport* report
);
```

### Paramètres

*report*   \_In\_\
Type : [IGameInputRawDeviceReport](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputrawdevicereport/igameinputrawdevicereport.md)\*

Rapport de fonctionnalité à envoyer. Créez-le en appelant [CreateRawDeviceReport](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_createrawdevicereport.md) avec `GameInputRawFeatureReport`, puis remplissez-le en appelant [IGameInputRawDeviceReport::SetRawData](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputrawdevicereport/methods/igameinputrawdevicereport_setrawdata.md).

### Valeur de retour

Type : HRESULT

Retourne `S_OK` si le rapport a été soumis au périphérique. Retourne `GAMEINPUT_E_AGGREGATE_OPERATION_NOT_SUPPORTED` si le périphérique est un périphérique agrégé, ou un autre code d'erreur si le rapport ne peut pas être soumis.

## Remarques

La méthode `SetRawDeviceFeature` écrit un rapport de fonctionnalité sur le périphérique. L'ID de rapport est extrait de la structure [GameInputRawDeviceReportInfo](https://docs.xbox.com/fr/reference/input/gameinput/structs/gameinputrawdevicereportinfo.md) du rapport, et la charge utile correspond aux données définies avec [IGameInputRawDeviceReport::SetRawData](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputrawdevicereport/methods/igameinputrawdevicereport_setrawdata.md).

Utilisez [GetFeatureReportCount](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getfeaturereportcount.md) et [GetFeatureReportInfo](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getfeaturereportinfo.md) pour découvrir les rapports de fonctionnalité définis par un périphérique et la taille de chacun d'eux. Les rapports de fonctionnalité sont actuellement exposés pour les périphériques HID. Pour les périphériques HID, le premier octet des données du rapport est l'ID de rapport.

`SetRawDeviceFeature` met le rapport en file d'attente pour la remise et retourne sans attendre que le périphérique le traite. Une valeur de retour indiquant la réussite signifie que le rapport a été soumis, et non que le périphérique l'a accepté. Pour confirmer le nouvel état, relisez le rapport en appelant [GetRawDeviceFeature](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getrawdevicefeature.md).

```cpp theme={null}
Microsoft::WRL::ComPtr<IGameInputRawDeviceReport> report;
if (SUCCEEDED(device->CreateRawDeviceReport(reportId, GameInputRawFeatureReport, &report)))
{
    // The first byte of a HID feature report is the report ID.
    uint8_t data[] = { static_cast<uint8_t>(reportId), 0x01, 0x00 };
    if (report->SetRawData(sizeof(data), data))
    {
        device->SetRawDeviceFeature(report.Get());
    }
}
```

Pour les cas d'usage intermédiaires et avancés de l'API GameInput, consultez [Rubriques avancées sur GameInput](https://docs.xbox.com/fr/build/core-features/common/input/advanced/input-advanced-topics.md).

## Configuration requise

**En-tête :** GameInput.h

**Bibliothèque :** gameinput.lib

**Plateformes prises en charge :** Windows, consoles de la famille XBOX One et consoles XBOX Series

## Voir aussi

[Vue d'ensemble de GameInput](https://docs.xbox.com/fr/build/core-features/common/input/overviews/input-overview.md)\
[GetRawDeviceFeature](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getrawdevicefeature.md)\
[GetFeatureReportCount](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getfeaturereportcount.md)\
[GetFeatureReportInfo](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getfeaturereportinfo.md)\
[CreateRawDeviceReport](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_createrawdevicereport.md)\
[IGameInputRawDeviceReport](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputrawdevicereport/igameinputrawdevicereport.md)\
[IGameInputDevice](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice.md)

## Historique des versions

| Version | Modifications |
| - | - |
| **v4** | Réintroduite. |
| **v1** | Supprimée. |
| **v0** | Introduite (non implémentée). |

## Annexe : Versions précédentes

### v0

Dans GameInput v0, cette méthode était déclarée avec la même signature, mais n'était pas implémentée. Pour plus d'informations, consultez [IGameInputDevice::SetRawDeviceFeature (obsolète)](https://docs.xbox.com/fr/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_setrawdevicefeature.md).


## Related topics

- [IGameInputDevice::SetRawDeviceFeature (déconseillé)](https://docs.xbox.com/fr/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_setrawdevicefeature.md)
- [GameInputRawDeviceReportKind](https://docs.xbox.com/fr/reference/input/gameinput/enums/gameinputrawdevicereportkind.md)
- [Membres de l'API GameInput](https://docs.xbox.com/fr/reference/input/gameinput/gameinput_members.md)
- [IGameInputDevice::GetRawDeviceFeature](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getrawdevicefeature.md)
- [IGameInputDevice::GetFeatureReportCount](https://docs.xbox.com/fr/reference/input/gameinput/interfaces/igameinputdevice/methods/igameinputdevice_getfeaturereportcount.md)
