共用方式為


感應器屬性

感應器和位置平臺會定義常數,以識別感應器的屬性。 感應器製造商也可以定義自己的屬性。

平臺會定義感應器屬性的下列 PROPERTYKEY 值。 除非另有說明,否則這些屬性是唯讀的。

每個平臺定義的感應器屬性 PROPERTYKEY 都是以名為 SENSOR_PROPERTY_COMMON_GUID 的通用 GUID 為基礎:

{7F8383EC-D3EC-495C-A8CF-B8BBE85C2920}。

重要

請勿使用此基底值來定義您自己的屬性索引鍵。

 

用戶端應用程式可以指定指定為讀取/寫入的屬性值。 指定為靜態的屬性值不能隨著時間而變更。 感應器必須支援指定為必要屬性。

屬性索引鍵名稱和 PID Description
SENSOR_PROPERTY_ACCURACY
(PID = 17)
VT_UNKNOWN
唯讀。 IPortableDeviceValues 物件,其中包含感應器資料類型名稱及其相關聯的協助工具。 精確度值代表 true 值可能的變化。 精確度值會使用與資料欄位相同的單位來表示,除非另有說明。
SENSOR_PROPERTY_CHANGE_SENSITIVITY
(PID = 14)
VT_UNKNOWN
讀取/寫入 IPortableDeviceValues 物件,其中包含感應器資料類型名稱及其相關聯的變更敏感度值。 變更敏感度值會提供資料欄位在引發SENSOR_EVENT_DATA_UPDATED事件之前應變更的數量要求。
敏感度值會使用與資料欄位相同的單位來表示,除非另有記載。
對於某些感應器,變更敏感度會解譯為實際值。 例如,SENSOR_DATA_TYPE_TEMPERATURE_CELSIUS的變更敏感度值為 2,代表加或減 2 度攝氏的敏感度。
對於其他感應器,例如環境光線感應器 (ALS) ,變更敏感度會解譯為百分比。 因此,SENSOR_DATA_TYPE_LIGHT_LEVEL_LUX的變更敏感度為 2 代表 LUX 的加數或減 2%。
您可以設定此值來要求特定的變更敏感度,但多個應用程式可以使用相同的感應器。 因此,感應器會根據其內部邏輯來判斷真正的變更敏感度。 例如,感應器一律可能會使用任何應用程式所要求的最小變更敏感度。
如果應用程式將此屬性設定為VT_Null,則設備磁碟機會將SENSOR_PROPERTY_CHANGE_SENSITIVITY重設為其預設值。
SENSOR_PROPERTY_CONNECTION_TYPE
(PID = 11)
VT_UI4
唯讀。 包含目前連線類型的SensorConnectionType值。
SENSOR_PROPERTY_CURRENT_REPORT_INTERVAL
(PID = 13)
VT_UI4
讀取/寫入 感應器資料包表產生的目前經過時間,以毫秒為單位。
將值為零表示驅動程式使用其預設報表間隔。 在收到此屬性的值為零之後,驅動程式必須在查詢時傳回其預設報告間隔,而不是零。
應用程式可以設定此值來要求特定的報表間隔,但多個應用程式會使用相同的驅動程式。 因此,驅動程式會根據內部邏輯來判斷真正的報告間隔。 例如,驅動程式一律可能會使用任何呼叫端所要求的最短報告間隔。
如需如何使用此屬性的範例,請參閱 使用感應器 API 事件
SENSOR_PROPERTY_DESCRIPTION
(PID = 10)
VT_LPWSTR
唯讀。 感應器描述字串。
SENSOR_PROPERTY_DEVICE_PATH
(PID = 15)
VT_LPWSTR
唯讀。 唯一識別與感應器相關聯的裝置實例。 您可以使用這個屬性來判斷裝置是否包含多個感應器。
設備磁碟機不需要支援這個屬性,因為平臺會提供此值給應用程式,而不需要查詢驅動程式。
SENSOR_PROPERTY_FRIENDLY_NAME
(PID = 9)
VT_LPWSTR
唯讀。 必要,靜態。 裝置的易記名稱。
SENSOR_PROPERTY_HID_USAGE
(PID = 22)
VT_UI4
唯讀。 提供此屬性,讓 HID 感應器製造商和驅動程式開發人員能夠識別 API 層中具有易記名稱「未知」的感應器。
SENSOR_PROPERTY_LIGHT_RESPONSE_CURVE
(PID = 16)
VT_VECTOR|VT_UI1
唯讀。 計算陣列,其中包含一組值,可提供環境光線層級與位移之間的對應。 這些值會以百分比表示。 Windows 中的調適型亮度功能會將這些值套用至使用者的目前顯示亮度喜好設定。
向量類型的資料一律會序列化為 VT_UI1 , (不帶正負號的 1 位元組字元陣列) 。 此屬性實際上會以 4 位元組不帶正負號的整數的形式包含每個值, (VT_UI4) 。 如需使用陣列的相關資訊,請參閱 擷取向量類型
SENSOR_PROPERTY_LOCATION_DESIRED_ACCURACY
(PID = 19)
VT_UI4
讀取/寫入 來自 LOCATION_DESIRED_ACCURACY 列舉的值,指出用戶端應用程式所要求的正確性處理類型。
LOCATION_DESIRED_ACCURACY_DEFAULT (0) 表示感應器應該使用其可優化電源使用和其他成本考慮的精確度。
LOCATION_DESIRED_ACCURACY_HIGH (1) 表示感應器應該提供最精確的報告。 這包括使用可能須付費的服務,或是耗用更多的電池電力或是連線頻寬。
SENSOR_PROPERTY_MANUFACTURER
(PID = 6)
VT_LPWSTR
唯讀。 必要,靜態。 製造商的名稱。
SENSOR_PROPERTY_MIN_REPORT_INTERVAL
(PID = 12)
VT_UI4
唯讀。 必要,靜態。 硬體支援以毫秒為單位產生感應器資料包表的最小間隔。
SENSOR_PROPERTY_MODEL
(PID = 7)
VT_LPWSTR
唯讀。 必要,靜態。 感應器模型名稱。
SENSOR_PROPERTY_PERSISTENT_UNIQUE_ID
(PID = 5)
VT_CLSID
唯讀。 必要,靜態。 識別感應器的 GUID 。 對於裝置上的每一個感應器,或電腦上列舉相同模型的裝置,此值必須是唯一的。 這個屬性包含呼叫 ISensor::GetID 取得的相同值。
SENSOR_PROPERTY_RANGE_MAXIMUM
(PID = 21)
VT_UKNOWN
唯讀。 IPortableDeviceValues 物件,其中包含感應器資料欄名及其相關聯的最大值。
SENSOR_PROPERTY_RANGE_MINIMUM
(PID = 20)
VT_UKNOWN
唯讀。 IPortableDeviceValues 物件,其中包含感應器資料欄名及其相關聯的最小值。
SENSOR_PROPERTY_RESOLUTION
(PID = 18)
VT_UKNOWN
唯讀。 IPortableDeviceValues 物件,其中包含感應器資料欄名及其相關聯的解析。 解析值代表資料欄位中變更的敏感度。
解析值會使用與資料欄位相同的單位來表示,除非另有記載。
SENSOR_PROPERTY_SERIAL_NUMBER
(PID = 8)
VT_LPWSTR
唯讀。 必要,靜態。 感應器序號。
SENSOR_PROPERTY_STATE
(PID = 3)
VT_UI4
唯讀。 必要。
包含目前感應器狀態的SensorState值。
SENSOR_PROPERTY_TYPE
(PID = 2)
VT_CLSID
唯讀。 必要,靜態。 識別感應器類型的 GUID 。 平臺定義的感應器類型定義于 Sensors.h 中。

所有感應器都必須支援下列 Windows 可攜式裝置 (WPD) 屬性。

屬性索引鍵 Description
WPD_FUNCTIONAL_OBJECT_CATEGORY
VT_CLSID
唯讀。 必要,靜態。 定義感應器類別。

規格需求

需求
最低支援的用戶端
Windows 7 [僅限傳統型應用程式]
最低支援的伺服器
都不支援
標頭
Sensors.h

另請參閱

GetProperties

GetProperty

IPortableDeviceValues

SetProperties