You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

169 lines
7.5 KiB

  1. /* Copyright (C) 2008-2016 Peter Palotas, Jeffrey Jangli, Alexandr Normuradov
  2. *
  3. * Permission is hereby granted, free of charge, to any person obtaining a copy
  4. * of this software and associated documentation files (the "Software"), to deal
  5. * in the Software without restriction, including without limitation the rights
  6. * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  7. * copies of the Software, and to permit persons to whom the Software is
  8. * furnished to do so, subject to the following conditions:
  9. *
  10. * The above copyright notice and this permission notice shall be included in
  11. * all copies or substantial portions of the Software.
  12. *
  13. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  14. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  15. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  16. * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  17. * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  18. * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  19. * THE SOFTWARE.
  20. */
  21. namespace Alphaleonis.Win32.Filesystem
  22. {
  23. internal static partial class NativeMethods
  24. {
  25. /// <summary>Flags for SetupDiGetDeviceRegistryProperty().</summary>
  26. internal enum SetupDiGetDeviceRegistryPropertyEnum
  27. {
  28. /// <summary>SPDRP_DEVICEDESC
  29. /// <para>Represents a description of a device instance.</para>
  30. /// </summary>
  31. DeviceDescription = 0,
  32. /// <summary>SPDRP_HARDWAREID
  33. /// <para>Represents the list of hardware identifiers for a device instance.</para>
  34. /// </summary>
  35. HardwareId = 1,
  36. /// <summary>SPDRP_COMPATIBLEIDS
  37. /// <para>Represents the list of compatible identifiers for a device instance.</para>
  38. /// </summary>
  39. CompatibleIds = 2,
  40. //SPDRP_UNUSED0 = 0x00000003,
  41. /// <summary>SPDRP_CLASS
  42. /// <para>Represents the name of the service that is installed for a device instance.</para>
  43. /// </summary>
  44. Service = 4,
  45. //SPDRP_UNUSED1 = 0x00000005,
  46. //SPDRP_UNUSED2 = 0x00000006,
  47. /// <summary>SPDRP_CLASS
  48. /// <para>Represents the name of the device setup class that a device instance belongs to.</para>
  49. /// </summary>
  50. Class = 7,
  51. /// <summary>SPDRP_CLASSGUID
  52. /// <para>Represents the <see cref="System.Guid"/> of the device setup class that a device instance belongs to.</para>
  53. /// </summary>
  54. ClassGuid = 8,
  55. /// <summary>SPDRP_DRIVER
  56. /// <para>Represents the registry entry name of the driver key for a device instance.</para>
  57. /// </summary>
  58. Driver = 9,
  59. ///// <summary>SPDRP_CONFIGFLAGS
  60. ///// Represents the configuration flags that are set for a device instance.
  61. ///// </summary>
  62. //ConfigurationFlags = 10,
  63. /// <summary>SPDRP_MFG
  64. /// <para>Represents the name of the manufacturer of a device instance.</para>
  65. /// </summary>
  66. Manufacturer = 11,
  67. /// <summary>SPDRP_FRIENDLYNAME
  68. /// <para>Represents the friendly name of a device instance.</para>
  69. /// </summary>
  70. FriendlyName = 12,
  71. /// <summary>SPDRP_LOCATION_INFORMATION
  72. /// <para>Represents the bus-specific physical location of a device instance.</para>
  73. /// </summary>
  74. LocationInformation = 13,
  75. /// <summary>SPDRP_PHYSICAL_DEVICE_LOCATION
  76. /// <para>Encapsulates the physical device location information provided by a device's firmware to Windows.</para>
  77. /// </summary>
  78. PhysicalDeviceObjectName = 14,
  79. ///// <summary>SPDRP_CAPABILITIES
  80. //// <para>Represents the capabilities of a device instance.</para>
  81. //// </summary>
  82. //Capabilities = 15,
  83. ///// <summary>SPDRP_UI_NUMBER - Represents a number for the device instance that can be displayed in a user interface item.</summary>
  84. //UiNumber = 16,
  85. ///// <summary>SPDRP_UPPERFILTERS - Represents a list of the service names of the upper-level filter drivers that are installed for a device instance.</summary>
  86. //UpperFilters = 17,
  87. ///// <summary>SPDRP_LOWERFILTERS - Represents a list of the service names of the lower-level filter drivers that are installed for a device instance.</summary>
  88. //LowerFilters = 18,
  89. ///// <summary>SPDRP_BUSTYPEGUID - Represents the <see cref="Guid"/> that identifies the bus type of a device instance.</summary>
  90. //BusTypeGuid = 19,
  91. ///// <summary>SPDRP_LEGACYBUSTYPE - Represents the legacy bus number of a device instance.</summary>
  92. //LegacyBusType = 20,
  93. ///// <summary>SPDRP_BUSNUMBER - Represents the number that identifies the bus instance that a device instance is attached to.</summary>
  94. //BusNumber = 21,
  95. /// <summary>SPDRP_ENUMERATOR_NAME
  96. /// <para>Represents the name of the enumerator for a device instance.</para>
  97. /// </summary>
  98. EnumeratorName = 22,
  99. ///// <summary>SPDRP_SECURITY - Represents a security descriptor structure for a device instance.</summary>
  100. //Security = 23,
  101. ///// <summary>SPDRP_SECURITY_SDS - Represents a security descriptor string for a device instance.</summary>
  102. //SecuritySds = 24,
  103. ///// <summary>SPDRP_DEVTYPE - Represents the device type of a device instance.</summary>
  104. //DeviceType = 25,
  105. ///// <summary>SPDRP_EXCLUSIVE - Represents a Boolean value that determines whether a device instance can be opened for exclusive use.</summary>
  106. //Exclusive = 26,
  107. ///// <summary>SPDRP_CHARACTERISTICS - Represents the characteristics of a device instance.</summary>
  108. //Characteristics = 27,
  109. ///// <summary>SPDRP_ADDRESS - Represents the bus-specific address of a device instance.</summary>
  110. //Address = 28,
  111. ///// <summary>SPDRP_UI_NUMBER_DESC_FORMAT - Represents a printf-compatible format string that you should use to display the value of the <see cref="UiNumber"/> device property for a device instance.</summary>
  112. //UiNumberDescriptionFormat = 29,
  113. ///// <summary>SPDRP_DEVICE_POWER_DATA - Represents power information about a device instance.</summary>
  114. //DevicePowerData = 30,
  115. ///// <summary>SPDRP_REMOVAL_POLICY - Represents the current removal policy for a device instance.</summary>
  116. //RemovalPolicy = 31,
  117. ///// <summary>SPDRP_REMOVAL_POLICY_HW_DEFAULT - Represents the default removal policy for a device instance.</summary>
  118. //RemovalPolicyDefault = 32,
  119. ///// <summary>SPDRP_REMOVAL_POLICY_OVERRIDE- Represents the removal policy override for a device instance.</summary>
  120. //RemovalPolicyOverride = 33,
  121. ///// <summary>SPDRP_INSTALL_STATE - Represents the installation state of a device instance.</summary>
  122. //InstallState = 34,
  123. /// <summary>SPDRP_LOCATION_PATHS
  124. /// <para>Represents the location of a device instance in the device tree.</para>
  125. /// </summary>
  126. LocationPaths = 35,
  127. /// <summary>SPDRP_BASE_CONTAINERID
  128. /// <para>Represents the <see cref="System.Guid"/> value of the base container identifier (ID) .The Windows Plug and Play (PnP) manager assigns this value to the device node (devnode).</para>
  129. /// </summary>
  130. BaseContainerId = 36
  131. }
  132. }
  133. }