Categorized | Programming

Windows 8 Device Property IDs, device enumeration (PnpObject)

Posted on 26 October 2012 by Jason Grimme

In WinRT you are able to enumerate over system devices using PnpObject.FindAllAsync(). You must provide a collection of properties that you would like retrieved. While many of these properties are defined and given friendly names by Microsoft, many do not (Such as, device container type).
You can view the full list if you install the WDK at C:\Program Files (x86)\Windows Kits\8.0\Include\shared\devpkey.h, but the values are in hex.

Example usage:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    var builder = new StringBuilder();
    var properties = new List<String>(){
        "System.Devices.Manufacturer",
        "System.Devices.ModelName",
        "System.Devices.ModelNumber",
        "{78c34fc8-104a-4aca-9ea4-524d52996e57} 90"
    };
    var collection = await PnpObject.FindAllAsync(PnpObjectType.DeviceContainer, properties);
                   
    foreach (PnpObject obj in collection)
    {
        foreach (var property in obj.Properties)
        {
            builder.AppendLine(property.Key + " : " + (property.Value ?? "null"));
        }
        builder.AppendLine("=======================================\n");
    }

For myself and you, I have formatted the listing so that it is easily readable.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
// Common DEVPKEY used to retrieve the display name for an object.
//
DEFINE_DEVPROPKEY(DEVPKEY_NAME,                             "{b725f130-47ef-101a-a5f1-02608c9eebac}, 10";    // DEVPROP_TYPE_STRING

//
// Device properties
// These DEVPKEYs correspond to the SetupAPI SPDRP_XXX device properties.
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_DeviceDesc,                "{a45c254e-df1c-4efd-8020-67d146a850e0}, 2";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_HardwareIds,               "{a45c254e-df1c-4efd-8020-67d146a850e0}, 3";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_CompatibleIds,             "{a45c254e-df1c-4efd-8020-67d146a850e0}, 4";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_Service,                   "{a45c254e-df1c-4efd-8020-67d146a850e0}, 6";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_Class,                     "{a45c254e-df1c-4efd-8020-67d146a850e0}, 9";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_ClassGuid,                 "{a45c254e-df1c-4efd-8020-67d146a850e0}, 10";    // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_Device_Driver,                    "{a45c254e-df1c-4efd-8020-67d146a850e0}, 11";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_ConfigFlags,               "{a45c254e-df1c-4efd-8020-67d146a850e0}, 12";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_Manufacturer,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 13";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_FriendlyName,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 14";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_LocationInfo,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 15";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_PDOName,                   "{a45c254e-df1c-4efd-8020-67d146a850e0}, 16";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_Capabilities,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 17";    // DEVPROP_TYPE_UNINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_UINumber,                  "{a45c254e-df1c-4efd-8020-67d146a850e0}, 18";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_UpperFilters,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 19";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_LowerFilters,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 20";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_BusTypeGuid,               "{a45c254e-df1c-4efd-8020-67d146a850e0}, 21";    // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_Device_LegacyBusType,             "{a45c254e-df1c-4efd-8020-67d146a850e0}, 22";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_BusNumber,                 "{a45c254e-df1c-4efd-8020-67d146a850e0}, 23";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_EnumeratorName,            "{a45c254e-df1c-4efd-8020-67d146a850e0}, 24";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_Security,                  "{a45c254e-df1c-4efd-8020-67d146a850e0}, 25";    // DEVPROP_TYPE_SECURITY_DESCRIPTOR
DEFINE_DEVPROPKEY(DEVPKEY_Device_SecuritySDS,               "{a45c254e-df1c-4efd-8020-67d146a850e0}, 26";    // DEVPROP_TYPE_SECURITY_DESCRIPTOR_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DevType,                   "{a45c254e-df1c-4efd-8020-67d146a850e0}, 27";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_Exclusive,                 "{a45c254e-df1c-4efd-8020-67d146a850e0}, 28";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_Device_Characteristics,           "{a45c254e-df1c-4efd-8020-67d146a850e0}, 29";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_Address,                   "{a45c254e-df1c-4efd-8020-67d146a850e0}, 30";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_UINumberDescFormat,        "{a45c254e-df1c-4efd-8020-67d146a850e0}, 31";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_PowerData,                 "{a45c254e-df1c-4efd-8020-67d146a850e0}, 32";    // DEVPROP_TYPE_BINARY
DEFINE_DEVPROPKEY(DEVPKEY_Device_RemovalPolicy,             "{a45c254e-df1c-4efd-8020-67d146a850e0}, 33";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_RemovalPolicyDefault,      "{a45c254e-df1c-4efd-8020-67d146a850e0}, 34";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_RemovalPolicyOverride,     "{a45c254e-df1c-4efd-8020-67d146a850e0}, 35";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_InstallState,              "{a45c254e-df1c-4efd-8020-67d146a850e0}, 36";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_LocationPaths,             "{a45c254e-df1c-4efd-8020-67d146a850e0}, 37";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_BaseContainerId,           "{a45c254e-df1c-4efd-8020-67d146a850e0}, 38";    // DEVPROP_TYPE_GUID

//
// Device properties
// These DEVPKEYs correspond to a device's status and problem code.
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_DevNodeStatus,             "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 2";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_ProblemCode,               "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 3";     // DEVPROP_TYPE_UINT32

//
// Device properties
// These DEVPKEYs correspond to a device's relations.
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_EjectionRelations,         "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 4";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_RemovalRelations,          "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 5";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_PowerRelations,            "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 6";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_BusRelations,              "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 7";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_Parent,                    "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 8";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_Children,                  "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 9";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_Siblings,                  "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 10";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_TransportRelations,        "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 11";    // DEVPROP_TYPE_STRING_LIST

//
// Device property
// This DEVPKEY corresponds to a the status code that resulted in a device to be in a problem state.
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_ProblemStatus,             "{4340a6c5-93fa-4706-972c-7b648008a5a7}, 12";     // DEVPROP_TYPE_NTSTATUS

//
// Other Device properties
// These DEVPKEYs are set for the corresponding types of root-enumerated devices.     ;comment
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_Reported,                  "{80497100-8c73-48b9-aad9-ce387e19c56e}, 2";     // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_Device_Legacy,                    "{80497100-8c73-48b9-aad9-ce387e19c56e}, 3";     // DEVPROP_TYPE_BOOLEAN



//
// Device Container Id
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_ContainerId,               "{8c7ed206-3f8a-4827-b3ab-ae9e1faefc6c}, 2";     // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_Device_InLocalMachineContainer    "{8c7ed206-3f8a-4827-b3ab-ae9e1faefc6c}, 4";     // DEVPROP_TYPE_BOOLEAN

//
// Device Experience related Keys
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_ModelId,                       "{80d81ea6-7473-4b0c-8216-efc11a2c4c8b}, 2";     // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_Device_FriendlyNameAttributes         "{80d81ea6-7473-4b0c-8216-efc11a2c4c8b}, 3";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_ManufacturerAttributes         "{80d81ea6-7473-4b0c-8216-efc11a2c4c8b}, 4";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_PresenceNotForDevice,          "{80d81ea6-7473-4b0c-8216-efc11a2c4c8b}, 5";     // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_Device_SignalStrength,                "{80d81ea6-7473-4b0c-8216-efc11a2c4c8b}, 6";     // DEVPROP_TYPE_INT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_IsAssociateableByUserAction    "{80d81ea6-7473-4b0c-8216-efc11a2c4c8b}, 7";// DEVPROP_TYPE_BOOLEAN

//
// Other Device properties
//
DEFINE_DEVPROPKEY(DEVPKEY_Numa_Proximity_Domain,            "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 1";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_DHP_Rebalance_Policy,      "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 2";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_Numa_Node,                 "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 3";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_BusReportedDeviceDesc,     "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 4";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_IsPresent,                 "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 5";     // DEVPROP_TYPE_BOOL
DEFINE_DEVPROPKEY(DEVPKEY_Device_HasProblem,                "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 6";     // DEVPROP_TYPE_BOOL
DEFINE_DEVPROPKEY(DEVPKEY_Device_ConfigurationId,           "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 7";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_ReportedDeviceIdsHash,     "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 8";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_PhysicalDeviceLocation     "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 9";     // DEVPROP_TYPE_BINARY
DEFINE_DEVPROPKEY(DEVPKEY_Device_BiosDeviceName,            "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 10";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverProblemDesc,         "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 11";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DebuggerSafe,              "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 12";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_PostInstallInProgress,     "{540b947e-8b40-45bc-a8a2-6a0b894cbda2}, 13";    // DEVPROP_TYPE_BOOLEAN


//
// Device Session Id
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_SessionId,                 "{83da6326-97a6-4088-9453-a1923f573b29}, 6";     // DEVPROP_TYPE_UINT32

//
// Device activity timestamp properties
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_InstallDate,               "{83da6326-97a6-4088-9453-a1923f573b29}, 100";   // DEVPROP_TYPE_FILETIME
DEFINE_DEVPROPKEY(DEVPKEY_Device_FirstInstallDate,          "{83da6326-97a6-4088-9453-a1923f573b29}, 101";   // DEVPROP_TYPE_FILETIME
DEFINE_DEVPROPKEY(DEVPKEY_Device_LastArrivalDate,           "{83da6326-97a6-4088-9453-a1923f573b29}, 102";   // DEVPROP_TYPE_FILETIME
DEFINE_DEVPROPKEY(DEVPKEY_Device_LastRemovalDate,           "{83da6326-97a6-4088-9453-a1923f573b29}, 103";   // DEVPROP_TYPE_FILETIME


//
// Device driver properties
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverDate,                "{a8b865dd2e3d4094ad97e593a7c75d6}, 2";      // DEVPROP_TYPE_FILETIME
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverVersion,             "{a8b865dd2e3d4094ad97e593a7c75d6}, 3";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverDesc,                "{a8b865dd2e3d4094ad97e593a7c75d6}, 4";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverInfPath,             "{a8b865dd2e3d4094ad97e593a7c75d6}, 5";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverInfSection,          "{a8b865dd2e3d4094ad97e593a7c75d6}, 6";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverInfSectionExt,       "{a8b865dd2e3d4094ad97e593a7c75d6}, 7";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_MatchingDeviceId,          "{a8b865dd2e3d4094ad97e593a7c75d6}, 8";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverProvider,            "{a8b865dd2e3d4094ad97e593a7c75d6}, 9";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverPropPageProvider     "{a8b865dd2e3d4094ad97e593a7c75d6}, 10";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverCoInstallers,        "{a8b865dd2e3d4094ad97e593a7c75d6}, 11";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_Device_ResourcePickerTags,        "{a8b865dd2e3d4094ad97e593a7c75d6}, 12";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_ResourcePickerExceptions   "{a8b865dd2e3d4094ad97e593a7c75d6}, 13";   // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverRank,                "{a8b865dd2e3d4094ad97e593a7c75d6}, 14";     // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_Device_DriverLogoLevel,           "{a8b865dd2e3d4094ad97e593a7c75d6}, 15";     // DEVPROP_TYPE_UINT32

//
// Device properties
// These DEVPKEYs may be set by the driver package installed for a device.
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_NoConnectSound,                "{a8b865dd2e3d4094ad97e593a7c75d6}, 17";     // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_Device_GenericDriverInstalled         "{a8b865dd2e3d4094ad97e593a7c75d6}, 18";     // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_Device_AdditionalSoftwareRequested    "{a8b865dd2e3d4094ad97e593a7c75d6}, 19"; //DEVPROP_TYPE_BOOLEAN

//
// Device safe-removal properties
//
DEFINE_DEVPROPKEY(DEVPKEY_Device_SafeRemovalRequired,       "{afd97640-{86a34210b67c289c41aabe55}, 2";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_Device_SafeRemovalRequiredOverrideafd97640,   "{86a34210b67c289c41aabe55}, 3"; // DEVPROP_TYPE_BOOLEAN

//
// Device properties
// These DEVPKEYs may be set by the driver package installed for a device.
//
DEFINE_DEVPROPKEY(DEVPKEY_DrvPkg_Model,                     "{cf73bb51-3abf-44a2-85e0-9a3dc7a12132}, 2";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DrvPkg_VendorWebSite,             "{cf73bb51-3abf-44a2-85e0-9a3dc7a12132}, 3";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DrvPkg_DetailedDescription,       "{cf73bb51-3abf-44a2-85e0-9a3dc7a12132}, 4";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DrvPkg_DocumentationLink,         "{cf73bb51-3abf-44a2-85e0-9a3dc7a12132}, 5";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DrvPkg_Icon,                      "{cf73bb51-3abf-44a2-85e0-9a3dc7a12132}, 6";     // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DrvPkg_BrandingIcon,              "{cf73bb51-3abf-44a2-85e0-9a3dc7a12132}, 7";     // DEVPROP_TYPE_STRING_LIST


//
// Device setup class properties
// These DEVPKEYs correspond to the SetupAPI SPCRP_XXX setup class properties.
//
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_UpperFilters,         "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 19";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_LowerFilters,         "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 20";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_Security,             "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 25";    // DEVPROP_TYPE_SECURITY_DESCRIPTOR
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_SecuritySDS,          "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 26";    // DEVPROP_TYPE_SECURITY_DESCRIPTOR_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_DevType,              "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 27";    // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_Exclusive,            "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 28";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_Characteristics,      "{4321918b-f69e-470d-a5de-4d88c75ad24b}, 29";    // DEVPROP_TYPE_UINT32

//
// Device setup class properties
//                                                                         
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_Name,                 "{259abffc50a747ceaf868c9a7d73366}, 2";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_ClassName,            "{259abffc50a747ceaf868c9a7d73366}, 3";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_Icon,                 "{259abffc50a747ceaf868c9a7d73366}, 4";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_ClassInstaller,       "{259abffc50a747ceaf868c9a7d73366}, 5";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_PropPageProvider,     "{259abffc50a747ceaf868c9a7d73366}, 6";      // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_NoInstallClass,       "{259abffc50a747ceaf868c9a7d73366}, 7";      // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_NoDisplayClass,       "{259abffc50a747ceaf868c9a7d73366}, 8";      // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_SilentInstall,        "{259abffc50a747ceaf868c9a7d73366}, 9";      // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_NoUseClass,           "{259abffc50a747ceaf868c9a7d73366}, 10";     // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_DefaultService,       "{259abffc50a747ceaf868c9a7d73366}, 11";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_IconPath,             "{259abffc50a747ceaf868c9a7d73366}, 12";     // DEVPROP_TYPE_STRING_LIST

DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_DHPRebalanceOptOut    "{d14d3ef366cf4ba29d380ddb37ab4701}, 2";    // DEVPROP_TYPE_BOOLEAN

//
// Other Device setup class properties
//
DEFINE_DEVPROPKEY(DEVPKEY_DeviceClass_ClassCoInstallers,    "{713d1703-a2e2-49f5-9214-56472ef3da5c}, 2";     // DEVPROP_TYPE_STRING_LIST


//
// Device interface properties
//
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterface_FriendlyName,     "{026e516e-b814-414b-83cd-856d6fef4822}, 2";     // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterface_Enabled,          "{026e516e-b814-414b-83cd-856d6fef4822}, 3";     // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterface_ClassGuid,        "{026e516e-b814-414b-83cd-856d6fef4822}, 4";     // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterface_ReferenceString   "{026e516e-b814-414b-83cd-856d6fef4822}, 5";   // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterface_Restricted,       "{026e516e-b814-414b-83cd-856d6fef4822}, 6";   // DEVPROP_TYPE_BOOLEAN


//
// Device interface class properties
//
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterfaceClass_DefaultInterface,        "{14c83a99-0b3f-44b7-be4c-a178d3990564}, 2"; // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceInterfaceClass_Name,                    "{14c83a99-0b3f-44b7-be4c-a178d3990564}, 3"; // DEVPROP_TYPE_STRING

//
// DeviceContainer properties that can be set on a devnode.
// These are used to be defined as DeviceDisplay
//

#define DEVPKEY_DeviceDisplay_DiscoveryMethod                DEVPKEY_DeviceContainer_DiscoveryMethod
#define DEVPKEY_DeviceDisplay_IsShowInDisconnectedState      DEVPKEY_DeviceContainer_IsShowInDisconnectedState
#define DEVPKEY_DeviceDisplay_IsNotInterestingForDisplay     DEVPKEY_DeviceContainer_IsNotInterestingForDisplay
#define DEVPKEY_DeviceDisplay_IsNetworkDevice                DEVPKEY_DeviceContainer_IsNetworkDevice
#define DEVPKEY_DeviceDisplay_Category                       DEVPKEY_DeviceContainer_Category
#define DEVPKEY_DeviceDisplay_UnpairUninstall                DEVPKEY_DeviceContainer_UnpairUninstall
#define DEVPKEY_DeviceDisplay_RequiresUninstallElevation     DEVPKEY_DeviceContainer_RequiresUninstallElevation
#define DEVPKEY_DeviceDisplay_AlwaysShowDeviceAsConnected    DEVPKEY_DeviceContainer_AlwaysShowDeviceAsConnected

DEFINE_DEVPROPKEY(DEVPKEY_Device_Model,                                 "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 39";    // DEVPROP_TYPE_STRING

//
// Device Container Properties
//

DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Address,                      "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 51";    // DEVPROP_TYPE_STRING | DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_DiscoveryMethod,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 52";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsEncrypted,                  "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 53";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsAuthenticated,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 54";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsConnected,                  "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 55";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsPaired,                     "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 56";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Icon,                         "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 57";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Version,                      "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 65";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Last_Seen,                    "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 66";    // DEVPROP_TYPE_FILETIME
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Last_Connected,               "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 67";    // DEVPROP_TYPE_FILETIME
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsShowInDisconnectedState     "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 68";   // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsLocalMachine,               "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 70";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_MetadataPath,                 "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 71";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsMetadataSearchInProgress    "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 72";          // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_MetadataChecksum,             "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 73";            // DEVPROP_TYPE_BINARY
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsNotInterestingForDisplay    "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 74";          // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_LaunchDeviceStageOnDeviceConnect  "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 76";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_LaunchDeviceStageFromExplorer "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 77";       // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_BaselineExperienceId,         "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 78";    // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsDeviceUniquelyIdentifiable  "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 79";        // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_AssociationArray,             "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 80";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_DeviceDescription1,           "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 81";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_DeviceDescription2,           "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 82";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_HasProblem,                   "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 83";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsSharedDevice,               "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 84";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsNetworkDevice,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 85";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsDefaultDevice,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 86";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_MetadataCabinet,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 87";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_RequiresPairingElevation      "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 88";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_ExperienceId,                 "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 89";    // DEVPROP_TYPE_GUID
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Category,                     "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 90";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Category_Desc_Singular,       "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 91";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Category_Desc_Plural,         "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 92";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Category_Icon,                "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 93";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_CategoryGroup_Desc,           "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 94";    // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_CategoryGroup_Icon,           "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 95";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_PrimaryCategory,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 97";    // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_UnpairUninstall,              "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 98";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_RequiresUninstallElevation    "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 99";  // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_DeviceFunctionSubRank,        "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 100";   // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_AlwaysShowDeviceAsConnected   "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 101";    // DEVPROP_TYPE_BOOLEAN
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_ConfigFlags,                  "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 105";   // DEVPROP_TYPE_UINT32
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_PrivilegedPackageFamilyNames  "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 106";   // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_CustomPrivilegedPackageFamilyNames    "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 107";   // DEVPROP_TYPE_STRING_LIST
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_IsRebootRequired,             "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 108";   // DEVPROP_TYPE_BOOLEAN

DEFINE_DEVPROPKEY(DEVPKEY_Device_InstanceId,                            "{78c34fc8-104a-4aca-9ea4-524d52996e57}, 256";   // DEVPROP_TYPE_STRING

//
// Temporary define until all code is switched over to DEVPKEY_DeviceContainer_IsConnected
//
#define DEVPKEY_DeviceContainer_IsPresent DEVPKEY_DeviceContainer_IsConnected


DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_FriendlyName,                 "{656A3BB3-ECC0-43FD-8477-4AE0404A96CD}, 12288"; // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_Manufacturer,                 "{656A3BB3-ECC0-43FD-8477-4AE0404A96CD}, 8192";  // DEVPROP_TYPE_STRING
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_ModelName,                    "{656A3BB3-ECC0-43FD-8477-4AE0404A96CD}, 8194";  // DEVPROP_TYPE_STRING (localizable)
DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_ModelNumber,                  "{656A3BB3-ECC0-43FD-8477-4AE0404A96CD}, 8195";  // DEVPROP_TYPE_STRING

DEFINE_DEVPROPKEY(DEVPKEY_DeviceContainer_InstallInProgress,            "{83da6326-97a6-4088-9453-a1923f573b29}, 9";     // DEVPROP_TYPE_BOOLEAN

Tags | , ,

Leave a Reply

Security Code:

-->