Последние записи
- TChromium (CEF3), сохранение изображений
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
- Ресайз PNG без потери прозрачности
- Вывод на печать графического файла
- Взаимодействие через командную строку
- Перенести программу из Delphi в Lazarus
- Определить текущую ОС
- Автоматическая смена языка (раскладки клавиатуры)
- Сравнение языков на массивах. Часть 2
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
24th
Авг
WMI. Получить DeviceID, PNPDeviceID по букве тома
Posted by maloy under Win Api
Человека_Борща
Доброго времени суток!
Мне нужно узнать DeviceID, PNPDeviceID класса Win32_DiskDrive(или Win32_USBHub) по букве диска. Буква диска есть у Win32_LogicalDisk.
Но чем их связать не нашел, банально нет одинаковых полей в запросе.
Кто с подобным работал?
Мне нужно выжать вот эти данные:
USB\VID_13FE&PID_4100\201208SP01790 70C28A7A9C18436 |
Зная метку тома.
Как это сделать через WMI?
Можно ли это сделать без WMI, если да, то куда копать?
waleri
Открываем диск \\.\X (не забываем экранировать \)
Дальше с помощью DeviceIoControl посылаем IOCTL_VOLUME_GET_VOLUME_DISK_EXTENT S и получаем VOLUME_DISK_EXTENTS
Берем первый DISK_EXTENT (их может быть больше одного, ибо том может быть на нескольких дисках), там есть физический индекс диска.
Дальше по индексу берем нужную инфу из WMI таблицы diskdrives — там тоже есть индекс.
Альтернативно, мне кажется, можно ту же инфо (по индексу) получить из Setup API.
Так же всю инфу можно извлечь через Virtual Disk Service (VDS) — начните с IVdsService и IVdsDisk3
Кстати, через VDS можете получать инфу о подключениях дисков.
Похожие статьи
Купить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)