Маркеры атрибутов в SDEL

Язык SDEL использует маркеры целевых атрибутов для определения характеристик целевых устройств и компьютеров.

Маркеры корневых атрибутов для всех целевых объектов

В следующей таблице описаны атрибуты в корневом пространстве имен, допустимые для всех целевых объектов.

Ключевое слово Тип VARIANT Описание
Тип VT_BSTR Определяет тип целевого объекта. Это значение может быть "System" или "Device".

Маркеры корневых атрибутов для целевого устройства

В следующей таблице описаны атрибуты в корневом пространстве имен, допустимые только для целевых объектов типа устройства.

Примечание

Большинство следующих атрибутов извлекаются из операционной системы через API SetupDi. Дополнительные сведения об этих API см. в разделе SetupDiGetDeviceRegistryProperty.

Ключевое слово Тип VARIANT Описание
Адрес VT_I4 Адрес для конкретного класса (или для конкретной шины).
BusNumber VT_I4 Номер шины для устройства.
Возможности VT_I4 Возможности устройства.
Знак VT_I4 Побитовое ИЛИ флагов характеристик устройства в DWORD. (SPDRP_CHARACTERISTICS)
Класс VT_BSTR Класс устройства.
ClassGUID VT_BSTR Класс устройства в формате GUID. Используйте этот ключевое слово вместо поля Класс при использовании локализованных сборок.
Идентификаторы compatID VT_ARRAY VARIANT с VT_BSTR Все совместимые идентификаторы, определенные для этого устройства.
ConfigFlags VT_I4 Флаги конфигурации для устройства.
Описание VT_BSTR Описание устройства.
DeviceID VT_BSTR Идентификатор устройства, включая идентификатор экземпляра устройства. Эта строка является уникальной для каждого устройства в системе.
DeviceStatusString VT_BSTR Содержит StatusString и ProblemCodeString в одной строке.
DevInst VT_I4 Непрозрачный дескриптор для экземпляра устройства.
DevType VT_I4 Представляет тип устройства. (SPDRP_DEVTYPE)
DisplayName VT_BSTR Разрешается в первое найденное значение (слева направо) в следующих атрибутах: FriendlyName, Description или DeviceID.
Драйвер VT_BSTR Ключ в HKLM\System\CurrentControlSet\Control\Class\, содержащий дополнительные сведения о драйвере.
DriverBinaryNames VT_ARRAY VARIANT с VT_BSTR Объединяет все данные из UpperClassFilters, UpperFilters, LowerFilters, LowerClassFilters и Service.
Перечислитель VT_BSTR Имя перечислителя устройства. (SPDRP_ENUMERATOR_NAME)
Монопольная блокировка VT_I4 Число, указывающее, может ли пользователь получить монопольное использование устройства. (SPDRP_EXCLUSIVE)
Фильтры VT_ARRAY VARIANT с VT_BSTR Объединяет все данные из UpperClassFilters, UpperFilters, LowerFilters и LowerClassFilters.
FriendlyName VT_BSTR Понятное имя устройства.
Идентификаторы оборудования VT_ARRAY VARIANT с VT_BSTR Все идентификаторы оборудования, определенные для этого устройства.
IsAttached VT_BOOL. Противоположность атрибуту IsPhantom. Это ключевое слово эквивалентно "IsPhantom=False".
IsDisable VT_BOOL. Извлекает флаг DN_DISABLEABLE из флагов состояния. Значение VARIANT_TRUE указывает, что устройство утверждает, что его можно отключить. Это ключевое слово эквивалентно&0x00002000 состояния.
IsDisabled VT_BOOL. Проверяет значение CM_PROB_DISABLED в атрибуте ProblemCode. Значение VARIANT_TRUE указывает, что устройство отключено и должно быть включено перед использованием. Это ключевое слово эквивалентно "ProblemCode=0x00000016".
IsFailedStart VT_BOOL. Проверяет наличие флага CM_PROB_FAILED_START вне флагов ProblemCode. Значение VARIANT_TRUE указывает, что драйверу устройства не удалось запуститься. Это ключевое слово эквивалентно ProblemCode=0x0000000A.
IsFailedInstall VT_BOOL. Проверяет наличие флага CM_PROB_FAILED_INSTALL вне флагов ProblemCode. Значение VARIANT_TRUE указывает, что драйвер устройства не удалось установить на устройстве. Это ключевое слово эквивалентно ProblemCode=0x0000001C.
IsFiltered VT_BOOL. Извлекает флаг DN_FILTERED из флагов состояния. Это ключевое слово эквивалентно&0x00000800 состояния.
IsManual VT_BOOL. Извлекает флаг DN_MANUAL из флагов состояния. Это ключевое слово эквивалентно&0x00000010 состояния.
IsMoved VT_BOOL. Извлекает флаг DN_MOVED из флагов состояния. Это ключевое слово эквивалентно&0x00001000 состояния.
IsPhantom VT_BOOL. Значение VARIANT_TRUE указывает, что устройство не подключено к системе или удалено.
IsRebootNeeded VT_BOOL. Извлекает флаг DN_NEED_RESTART из флагов состояния. Значение VARIANT_TRUE указывает, что совместный установщик устройства утверждает, что компьютер необходимо перезагрузить, чтобы устройство завершило удаление или установку. Это ключевое слово эквивалентно&0x00000100 состояния.
IsReinstallNeeded VT_BOOL. Извлекает флаг CONFIGFLAG_REINSTALL из атрибута ConfigFlags. Значение VARIANT_TRUE указывает, что устройство утверждает, что его можно удалить. Это ключевое слово эквивалентно ConfigFlags&0x00000020.
IsRemovable VT_BOOL. Извлекает флаг DN_REMOVABLE из флагов состояния. Значение VARIANT_TRUE указывает, что устройство утверждает, что его можно удалить. Это ключевое слово эквивалентно&0x00004000 состояния.
IsRemovePending VT_BOOL. Извлекает флаг DN_WILL_BE_REMOVED из флагов состояния. Это ключевое слово эквивалентно&0x00040000 состояния.
IsRootEnumerated VT_BOOL. Извлекает флаг DN_ROOT_ENUMERATED из флагов состояния. Значение VARIANT_TRUE указывает, что родительским элементом устройства является RootDevice. Это ключевое слово эквивалентно&0x00000001 состояния.
IsStarted VT_BOOL. Извлекает флаг DN_STARTED из флагов состояния. Значение VARIANT_TRUE указывает, что устройство настроено в данный момент. Это ключевое слово эквивалентно&0x00000008 состояния.
LegacyBusType VT_I4 Устаревший тип шины.
Расположение VT_BSTR Дополнительные сведения о физическом расположении устройства.
LocationPaths VT_ARRAY variant с VT_BSTR Расположение экземпляра устройства в дереве устройств.
LowerClassFilters VT_ARRAY variant с VT_BSTR Имена служб каждого драйвера, присоединенного к фильтру более низкого класса на целевом устройстве.
LowerClassFiltersBinaryNames VT_ARRAY variant с VT_BSTR Имена двоичных файлов всех драйверов фильтров более низкого класса для целевого устройства.
Нижние фильтри VT_ARRAY variant с VT_BSTR Имена служб каждого драйвера, подключенного в качестве нижнего фильтра на целевом устройстве.
LowerFiltersBinaryNames VT_ARRAY variant с VT_BSTR Имена всех драйверов нижнего фильтра для целевого устройства.
Изготовитель VT_BSTR Производитель устройства.
PDO VT_BSTR Имя физического объекта устройства в ядре.
ProblemCode VT_I4 Код проблемы для устройства. Одно из CM_PROB_ префиксных значений проблемы, определенных в Cfg.h.
ProblemCodeString VT_BSTR Строковое представление ProblemCode.
RemovalPolicy VT_I4 Текущая политика удаления устройства. (SPDRP_REMOVAL_POLICY)
RemovalPolicyHWDefault VT_I4 Политика удаления устройства по умолчанию, заданная ardware. (SPDRP_REMOVAL_POLICY_HW_DEFAULT)
УдалениеPolicyOverride VT_I4 Переопределите политику удаления устройства (если она существует). (SPDRP_REMOVAL_POLICY_OVERRIDE)
Служба VT_BSTR Имя службы драйвера для устройства.
ServiceBinaryName VT_BSTR Имя драйвера функции для целевого устройства.
Состояние VT_I4 Флаги состояния для устройства.
StatusString VT_BSTR Строка состояния устройства.
SymbolicLink VT_BSTR Имя, которое можно использовать для открытия устройства с помощью метода Microsoft Win32 CreateFile. Таким образом нельзя использовать все устройства. Для большинства устройств с программируемым интерфейсом будет доступно значение SymbolicLink.
Формат пользовательского интерфейса VT_BSTR Строка, используемая для отображения значения UINumber. (SPDRP_UI_NUMBER_DESC_FORMAT)
UINumber VT_I4 UiNumber для устройства.
UpperClassFilters VT_ARRAY VARIANT с VT_BSTR Имена служб каждого драйвера, подключенного в качестве фильтра верхнего класса на целевом устройстве.
UpperClassFiltersBinaryNames VT_ARRAY VARIANT с VT_BSTR Имена двоичных файлов всех драйверов фильтров верхнего класса для целевого устройства.
Верхние фильтра VT_ARRAY VARIANT с VT_BSTR Имена служб каждого драйвера, подключенного в качестве верхнего фильтра на целевом устройстве.
UpperFiltersBinaryNames VT_ARRAY VARIANT с VT_BSTR Имена всех драйверов верхнего фильтра для целевого устройства

Корневые ключевые слова для целевого объекта системы

В следующей таблице описаны атрибуты в корневом пространстве имен, допустимые только для целевых объектов системного типа.

Ключевое слово Тип VARIANT Описание
IsPhantom VT_BOOL. Указывает, доступна ли в настоящее время система для использования.
IsRemote VT_BOOL. Указывает, является ли целевой объект удаленной системой.
PageSize VT_I4 Размер страницы оборудования целевой системы.
ProcArch VT_BSTR Архитектура процессора целевого оборудования системы. Это поле может содержать "x86", "IA64" или "x64".
OSMajorVersion VT_I4 Указывает основной номер версии операционной системы.
OSMinorVersion VT_I4 Указывает дополнительный номер версии операционной системы.

Ключевые слова пространства имен дисков

В следующей таблице описаны атрибуты в пространстве имен Disk, допустимые только для дисковых устройств.

Примечание

Большинство атрибутов в пространстве имен Disk извлекаются из операционной системы через IOCTL на сам диск. Дополнительные сведения см. в разделе STORAGE_DEVICE_DESCRIPTOR.

Ключевое слово Тип VARIANT Описание
BusType VT_I4 STORAGE_DEVICE_DESCRIPTOR. Поле BusType.
DeviceType VT_I4 STORAGE_DEVICE_DESCRIPTOR. Поле DeviceTypeModifier.
IsRemovable VT_BOOL. Указывает, содержит ли устройство съемный носитель.
IsCommandQueuing VT_BOOL. STORAGE_DEVICE_DESCRIPTOR. Поле CommandQueueing.
Число VT_UI4 Номер диска (скорее всего, совпадает с полем Адрес).
ProductID VT_BSTR Идентификатор продукта.
ProductRev VT_BSTR Значение редакции продукта.
SerialNumber VT_BSTR Серийный номер.
Размер VT_I8 Общий размер диска в байтах.
VendorID VT_BSTR Идентификатор поставщика.

Ключевые слова пространства имен томов

В следующей таблице описаны атрибуты в пространстве имен томов, допустимые только для устройств томов.

Ключевое слово Тип VARIANT Описание
Загрузка VT_BOOL. Определяет, является ли том загрузочным разделом. Значение VARIANT_TRUE указывает, что том является загрузочным разделом. Загрузочный раздел — это раздел, содержащий файлы операционной системы Windows.
DeviceName VT_BSTR Текущее сопоставление для имени устройства MS-DOS этого тома.
Диск VT_BSTR Текущее сопоставление для имени устройства MS-DOS этого тома.
DriveLetter VT_BSTR Буква диска тома, включая косую черту в конце (\).
ExtentCount VT_I4 Количество дисков, на которые распространяется том.
ExtentDiskNumbers VT_ARRAY VARIANT с VT_I4 Массив, содержащий каждое из значений Disk::Number, на которые распространяется том. Массив содержит элементы ExtentCount и индексируется 0. Массив имеет тот же порядок, что и другие массивы Extent*.
ExtentLengths VT_ARRAY variant с VT_I8 Массив, содержащий длину каждого отдельного экстента, на который распространяется том. Массив содержит элементы ExtentCount и индексируется 0. Массив имеет тот же порядок, что и другие массивы Extent*.
ExtentOffsets VT_ARRAY variant с VT_I8 Массив, содержащий начальное смещение каждого отдельного экстента, на который распространяется том. Массив содержит элементы ExtentCount и индексируется 0. Массив имеет тот же порядок, что и другие массивы Extent*.
FileSystem VT_BSTR Имя файловой системы тома. (GetVolumeInformation)
FreeSize VT_I8 Общий объем свободного места на томе в байтах.
GBFreeSize VT_I4 e общее количество свободных гигабайт (ГБ) на диске, доступном пользователю.
GBTotalSize VT_I4 Общее количество гигабайт (ГБ) на томе, доступном пользователю.
HasFiles VT_BOOL. Определяет, есть ли на томе файлы. Значение VARIANT_TRUE указывает, что на томе есть файлы.
IsMediaPresent VT_BOOL. Определяет, присутствует ли носитель для тома. Значение VARIANT_TRUE указывает, что на томе есть носитель.
IsMediaRemovable VT_BOOL. Определяет, является ли томный носитель съемным. Значение VARIANT_TRUE указывает, что носитель тома является съемным.
Метка VT_BSTR Метка тома. (GetVolumeInformation)
MBFreeSize VT_I8 Общее количество свободных мегабайтов (МБ) на диске, доступных пользователю.
MBTotalSize VT_I8 Общее количество мегабайт (МБ) на томе, доступном пользователю. (GetDiskFreeSpaceEx)
MountPaths VT_BSTR Все пути подключения к этому тому.
PagePath VT_BOOL. Определяет, содержит ли том активный файл подкачки. Значение VARIANT_TRUE указывает, что том содержит активный файл подкачки.
SerialNumber VT_I4 Серийный номер тома.
Система VT_BOOL. Определяет, является ли том системным разделом. Значение VARIANT_TRUE указывает, что том содержит системный раздел Windows. Системный раздел содержит файлы, связанные с оборудованием (загрузочный код), которые запускают диспетчер загрузки Windows (bootmgr).
TotalSize VT_I8 Общий размер тома в байтах.
Тип VT_I4 Значение, возвращаемое из GetDriveType(DriveLetter). Дополнительные сведения см. в разделе GetDriveType в библиотека MSDN.

Ключевые слова пространства имен Power

В следующей таблице описаны атрибуты в пространстве имен Power, допустимые только для устройств с питанием.

Ключевое слово Тип VARIANT Описание
SupportedDeviceUnits VT_ARRAY variant с VT_BSTR Массив пространств имен PowerUnit, доступных для запроса.

Ключевые слова Пространства имен PowerDevice, PowerComponentX, PowerProcessor и PowerSoC

В следующей таблице описаны атрибуты в различных пространствах имен PowerUnit.

Ключевое слово Тип VARIANT Описание
SupportedStates VT_ARRAY variant с VT_BSTR Массив пространств имен для состояний питания (C0–C6, D0–D3, F0–F9, SWIS0–SWIS3)
CoveredStates VT_ARRAY variant с VT_BSTR Массив пространств имен для охваченных состояний. Включаются только состояния с ненулевым числом попаданий

Ключевые слова пространства имен PowerProcessorCX, PowerDeviceDX, PowerComponentXFY, PowerSoCSWISX

В следующей таблице описаны атрибуты в различных пространствах имен PowerState.

Ключевое слово Тип VARIANT Описание
HitCount VT_UI4 Количество попыток ввода заданного состояния питания во время теста.
Duration VT_UI4 Период времени в миллисекундах, затраченный в заданном состоянии питания.
Процент VT_UI4 он процент времени, проведенного в заданном состоянии власти.

Ключевые слова пространства имен интерфейса

В следующей таблице описаны атрибуты в различных пространствах имен Interfaces.

Ключевое слово Тип VARIANT Описание
Все VT_BSTR Все интерфейсы устройств для всех GUID интерфейса устройства, поддерживаемых одним устройством.
ТОМ VT_BSTR Интерфейсы для guid GUID_DEVINTERFACE_VOLUME.
DISK; VT_BSTR Интерфейсы для guid GUID_DEVINTERFACE_DISK.
CDROM VT_BSTR Интерфейсы для guid GUID_DEVINTERFACE_CDROM.
GUID VT_BSTR Интерфейсы для одного GUID интерфейса.

Ключевые слова в пространстве имен CAP

В следующей таблице описаны атрибуты в различных пространствах имен CAP (Capabilities).

Ключевое слово Тип VARIANT Описание
LockSupported VT_BOOL. Указывает, поддерживает ли устройство блокировку физического устройства, которая предотвращает извлечение устройства. (CM_DEVCAP_LOCKSUPPORTED)
EjectSupported VT_BOOL. Указывает, поддерживает ли устройство извлечение устройства с программным управлением, когда система находится в состоянии PowerSystemWorking. (CM_DEVCAP_EJECTSUPPORTED)
Съемный VT_BOOL. Указывает, можно ли динамически удалять устройство из его непосредственного родительского элемента. (CM_DEVCAP_REMOVABLE)
DockDevice VT_BOOL. Указывает, является ли устройство периферийным устройством для закрепления. (CM_DEVCAP_DOCKDEVICE)
UniqueId VT_BOOL. Указывает, является ли идентификатор экземпляра устройства уникальным для всей системы. (CM_DEVCAP_UNIQUEID)
SilentInstall VT_BOOL. Указывает, следует ли диспетчер устройств подавлять все диалоговые окна установки. (CM_DEVCAP_SILENTINSTALL)
RawDeviceOK VT_BOOL. Указывает, может ли драйвер базовой шины управлять устройством, если драйвер-функция отсутствует. (CM_DEVCAP_RAWDEVICEOK)
SurpriseRemovalOK VT_BOOL. Указывает, может ли драйвер-функция устройства обрабатывать случай удаления устройства до того, как Windows сможет отправить ему IRP_MN_QUERY_REMOVE_DEVICE. (CM_DEVCAP_SURPRISEREMOVALOK)
HardwareDisabled VT_BOOL. Указывает, отключено ли оборудование устройства. (CM_DEVCAP_HARDWAREDISABLED)
Нединамическая VT_BOOL. Зарезервировано для последующего использования. (CM_DEVCAP_NONDYNAMIC)

Ключевые слова пространства имен INF

В следующей таблице описаны атрибуты в различных пространствах имен INF.

Ключевое слово Тип VARIANT Описание
имя_файла VT_BSTR Имя INF-файла.
FileNamePath VT_BSTR Путь к имени INF-файла.
SectionName VT_BSTR Имя раздела INF.
Дата VT_BSTR Дата INF.
OriginalInfFileName VT_BSTR Исходное имя INF-файла.

Ключевые слова пространства имен NET

В следующей таблице описаны атрибуты в различных пространствах имен NET.

Ключевое слово Тип VARIANT Описание
AdapterName VT_BSTR Поле AdapterName из структуры IP_ADAPTER_ADDRESSES.
IPV6Address VT_BSTR Поле FirstUnicastAddress из структуры IP_ADAPTER_ADDRESSES.
FirstAnycastAddress VT_BSTR Поле FirstAnycastAddress из структуры IP_ADAPTER_ADDRESSES.
FirstMulticastAddress VT_BSTR Поле FirstMulticastAddress из IP_ADAPTER_ADDRESSES структуры.
FirstDnsServerAddress VT_BSTR Поле FirstDnsServerAddress из структуры IP_ADAPTER_ADDRESSES.
FirstPrefix VT_BSTR Поле FirstPrefix из структуры IP_ADAPTER_ADDRESSES.
PrimaryWINSServer VT_BSTR Поле FirstWinsServerAddress из структуры IP_ADAPTER_ADDRESSES.
FirstGatewayAddress VT_BSTR Поле FirstGatewayAddress из структуры IP_ADAPTER_ADDRESSES.
ConnectionSpecificDNSSuffix VT_BSTR Поле DnsSuffix из структуры IP_ADAPTER_ADDRESSES
Описание VT_BSTR Поле описания из структуры IP_ADAPTER_ADDRESSES.
FriendlyName VT_BSTR Поле FriendlyName из структуры IP_ADAPTER_ADDRESSES.
PhysicalAddress VT_BSTR Поле MacAddress из структуры IP_ADAPTER_ADDRESSES
Флаги VT_UI4 Поле флагов из структуры IP_ADAPTER_ADDRESSES
Mtu VT_UI4 Поле Mtu из IP_ADAPTER_ADDRESSES структуры.
IfType VT_UI4 Поле IfType из IP_ADAPTER_ADDRESSES структуры.
OperStatus VT_UI4 Поле OperStatus из структуры IP_ADAPTER_ADDRESSES
OperationalStatusString VT_BSTR Строковый эквивалент поля OperStatus из IP_ADAPTER_ADDRESSES структуры
Ipv6IfIndex VT_UI4 Поле Ipv6IfIndex из структуры IP_ADAPTER_ADDRESSES
TransmitLinkSpeedMbps VT_UI4 Поле TransmitLinkSpeedGpbs из структуры IP_ADAPTER_ADDRESSES.
ReceiveLinkSpeedMbps VT_UI4 Поле ReceiveLinkSpeedMbps из структуры IP_ADAPTER_ADDRESSES.
Ipv4Metric VT_UI4 Поле Ipv4Metric из структуры IP_ADAPTER_ADDRESSES.
Ipv6Metric VT_UI4 Поле Ipv6Metric из структуры IP_ADAPTER_ADDRESSES.
DHCPServer VT_BSTR Поле Dhcpv4Server из IP_ADAPTER_ADDRESSES структуры.
Идентификатор секции VT_UI4 Поле CompartmentId из структуры IP_ADAPTER_ADDRESSES.
NetworkGuid VT_BSTR Поле NetworkGuid из IP_ADAPTER_ADDRESSES структуры.
ConnectionType VT_UI4 Поле ConnectionType из структуры IP_ADAPTER_ADDRESSES.
Тип туннеля VT_UI4 Поле TunnelType из структуры IP_ADAPTER_ADDRESSES.
Dhcpv6ClientDuidLength VT_UI4 Поле Dhcpv6ClientDuidLength из IP_ADAPTER_ADDRESSES структуры.
Dhcpv6Iaid VT_UI4 Поле Dhcpv6Iaid из структуры IP_ADAPTER_ADDRESSES.
IsOperational VT_BOOL. Является операционным.
PhysicalMediaType VT_UI4 Тип физического носителя сетевого устройства.
MediaType VT_UI4 Тип физического носителя сетевого устройства.

Ключевые слова пространства имен OpticalMedia

В следующей таблице описаны атрибуты в различных пространствах имен OpticalMedia.

Ключевое слово Тип VARIANT Описание
IsMediaPresent VT_BOOL. Если носитель присутствует или отсутствует на устройстве оптического носителя.
Тип VT_UI4 Текущий номер типа профиля, возвращенный в GET_CONFIGURATION_HEADER из IOCTL_CDROM_GET_CONFIGURATION.
ClassTypeString VT_BSTR Тип класса оптических носителей.
ТипСтрока VT_BSTR Тип оптического носителя.

Ключевые слова пространства имен StorageMedia

В следующей таблице описаны атрибуты в различных пространствах имен StorageMedia.

Ключевое слово Тип VARIANT Описание
DeviceType VT_UI4 Указывает одну из системных констант FILE_DEVICE_XXX, указывающих тип устройства.
DeviceTypeString VT_BSTR Строка, связанная с типом устройства.
Count VT_UI4 Содержит количество DEVICE_MEDIA_INFO структур в MediaInfo.
SupportedTypes VT_UI4 Указывает все MEDIA_TYPE или STORAGE_MEDIA_TYPE значения, указывающие тип съемного диска.
Допустимо VT_BOOL. Если средство сбора данных для этого устройства содержит допустимые данные.

Ключевые слова пространства имен Windows

В следующей таблице описаны атрибуты в различных пространствах имен Windows.

Ключевое слово Тип VARIANT Описание
IsDriverVerifierEnabled VT_BOOL. True или False, чтобы указать, включена ли проверка драйверов по крайней мере со стандартными параметрами для всех драйверов этого устройства.
IsKernelDebugDevice VT_BOOL. True или False, чтобы указать, используется ли это устройство отладчиком ядра.