Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Viktigt!
Använd UWP-sensor-API :et i stället.
COM-baserade sensor-API:et är inaktuellt och bör inte användas i nya program. Inga ytterligare funktioner eller förbättringar planeras och stödet begränsas.
Vissa egenskaper och datafält innehåller informationsmatriser. Egenskapen SENSOR_PROPERTY_LIGHT_RESPONSE_CURVE innehåller till exempel en matris med osignerade heltal med 4 byte. Men när du tar emot sådana matriser via sensor-API:et representeras de alltid som typ VT_VECTOR|UI1, en matris med en byte-tecken, oavsett den faktiska typen av data i matrisen. För dessa typer måste du vara noga med att omvandla matrisvariabler till rätt datatyp för egenskapen eller datafältet.
Information om egenskaper, datafält och deras typer finns i Konstanter.
Följande exempelkod visar hur du omvandlar data som hämtats i SENSOR_PROPERTY_LIGHT_RESPONSE_CURVE till rätt typ.
PROPVARIANT pvCurve;
PropVariantInit(&pvCurve);
// Retrieve the property value.
hr = pSensor->GetProperty(SENSOR_PROPERTY_LIGHT_RESPONSE_CURVE, &pvCurve);
if (SUCCEEDED(hr))
{
if ((VT_UI1|VT_VECTOR) == V_VT(pvCurve)) // Note actual type of UI1
{
// Cast the array to UINT, a 4-byte unsigned integer.
// Item count for the array.
UINT cElement = pvCurve.caub.cElems/sizeof(UINT);
// Array pointer.
UINT* pElement = (UINT*)(pvCurve.caub.pElems);
// Use the array.
}
}
// Remember to free the PROPVARIANT when done.
PropVariantClear(&pvCurve);