HidOutputReport Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un rapport de sortie HID.
Les hôtes émettent des rapports de sortie pour demander des modifications sur l’appareil. Par exemple, un hôte peut envoyer une demande à un clavier pour activer ou désactiver une LED.
public ref class HidOutputReport sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class HidOutputReport final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class HidOutputReport
Public NotInheritable Class HidOutputReport
- Héritage
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v1.0)
|
Remarques
L’exemple suivant montre comment une application UWP créée avec XAML et C# utilise la méthode CreateOutputReport pour créer un rapport de sortie. Cet exemple utilise ensuite la méthode SendOutputReportAsync pour envoyer le rapport à l’appareil.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Devices.Enumeration;
using Windows.Devices.HumanInterfaceDevice;
using Windows.Storage;
using Windows.Storage.Streams;
namespace HidSampleCS
{
class Vendor
{
private async void ReadWriteToHidDevice(HidDevice device)
{
if (device != null)
{
// construct a HID output report to send to the device
HidOutputReport outReport = device.CreateOutputReport();
/// Initialize the data buffer and fill it in
byte[] buffer = new byte[] { 10, 20, 30, 40 };
DataWriter dataWriter = new DataWriter();
dataWriter.WriteBytes(buffer);
outReport.Data = dataWriter.DetachBuffer();
// Send the output report asynchronously
await device.SendOutputReportAsync(outReport);
//
// Sent output report successfully
// Now lets try read an input report
//
HidInputReport inReport = await device.GetInputReportAsync();
if (inReport != null)
{
UInt16 id = inReport.Id;
var bytes = new byte[4];
DataReader dataReader = DataReader.FromBuffer(inReport.Data);
dataReader.ReadBytes(bytes);
}
else
{
this.NotifyUser("Invalid input report received");
}
}
else
{
this.NotifyUser("device is NULL");
}
}
}
}
Propriétés
Data |
Obtient ou définit les données associées à un rapport de sortie donné. |
Id |
Obtient l’identificateur associé à un rapport de sortie donné. |
Méthodes
GetBooleanControl(UInt16, UInt16) |
Récupère le contrôle booléen associé à usagePage et usageId donnés. |
GetBooleanControlByDescription(HidBooleanControlDescription) |
Récupère le contrôle booléen associé au controlDescription donné. |
GetNumericControl(UInt16, UInt16) |
Récupère le contrôle numérique associé à usagePage et usageId donnés. |
GetNumericControlByDescription(HidNumericControlDescription) |
Récupère le contrôle numérique associé au controlDescription donné. |