HidOutputReport Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un report di output HID.
Gli host generano report di output per richiedere modifiche nel dispositivo. Ad esempio, un host potrebbe emettere una richiesta a una tastiera per attivare o disattivare un 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
- Ereditarietà
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)
|
Commenti
Nell'esempio seguente viene illustrato come un'app UWP compilata con XAML e C# usa il metodo CreateOutputReport per creare un report di output. In questo esempio viene quindi usato il metodo SendOutputReportAsync per inviare il report al dispositivo.
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");
}
}
}
}
Proprietà
Data |
Ottiene o imposta i dati associati a un report di output specificato. |
Id |
Ottiene l'identificatore associato a un report di output specificato. |
Metodi
GetBooleanControl(UInt16, UInt16) |
Recupera il controllo booleano associato all'utilizzo specificatoPage e usageId. |
GetBooleanControlByDescription(HidBooleanControlDescription) |
Recupera il controllo booleano associato al controllo specificatoDescription. |
GetNumericControl(UInt16, UInt16) |
Recupera il controllo numerico associato all'utilizzo specificatoPage e usageId. |
GetNumericControlByDescription(HidNumericControlDescription) |
Recupera il controllo numerico associato al controllo specificatoDescription. |