Поиск внешних накопителей(флешки, дискеты и т.п.)
- 2013-01-23
- Автор: admin
- Рубрика: 1C:Предприятие
Реализован с помощью Windows Management Instrumentation (WMI), в дословном переводе — это инструментарий управления Windows. Если говорить более развернуто, то WMI — это одна из базовых технологий для централизованного управления и слежения за работой различных частей компьютерной инфраструктуры под управлением платформы Windows. WMI построен по объектно-ориентированному принципу, все данные операционной системы представлены в виде объектов и их свойств и методов. Для обращения к объектам WMI используется специфический язык запросов WMI Query Language (WQL), который является одним из разновидностей SQL. К примеру запрос на получение списка всех подключенных накопителей выглядит так:
“SELECT * FROM Win32_LogicalDisk WHERE DriveType=2”.
В результате выполнения запроса возвращается класс(структура), содержащая значения различных параметров подключеннх накопителей, в том числе параметр DriveType, использованный в запросе , значение «2» которого означает, что это сменный накопитель типа флешки или дискеты. В параметре «VolumeSerialNumber» будет содержаться имя(буква) усстройства.
Подключение происходит по аналогии с тем, как подключается любая внешняя компонента.
Функция ПолучитьИмяВнешнегоДиска() Экспорт Logs=ПолучитьCOMОбъект("winmgmts:!\\.\root\cimv2"); ItemsD=Logs.ExecQuery("Select * from Win32_LogicalDisk"); Для Каждого ItemD Из ItemsD Цикл Если (ItemD.DriveType = 2) И (СтрДлина(ItemD.VolumeSerialNumber) > 0) Тогда Возврат ItemD.Name; КонецЕсли; КонецЦикла; Возврат ""; КонецФункции