Что нового

[Автоматизация] Как вызвать пункт меню (правая кнопка мыши) на папке в проводнике?

true

Новичок
Сообщения
3
Репутация
0
Здравствуйте! Суть проблемы такова:
есть антивирусник, он регистрирует shell extension, когда нажимаешь правой кнопкой мыши на папке или файле в проводнике, там есть пункт Scan with ...
Как это дело автоматизировать? Нужно запустить сканирование нужной папки. Гуглил, искал по форумам но так и не нашел как это сделать.
 
Автор
T

true

Новичок
Сообщения
3
Репутация
0
в общем сделал путем эмуляции открытия папки в начале координат и тыканьем мышкой в нужной координате... по-тупому, но работает. а все-таки есть может способ запуска shell extension ?
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
может просто посмотриш в реестре эту запись, и будеш открывать .exe с параметром?
 

erlik

Продвинутый
Сообщения
317
Репутация
84
OffTopic:
Ganibal95
Я думаю он бы так и сделал, если бы антивирусники не регистрировали свои собственные обработчики клика контекстного меню. У того же ESET NOD32 клик пункта меню "Сканировать программой ESET NOD32" перехватывает библиотека shellExt.dll. Ну и как ее вызывать прикажешь? У нее всего четыре экспортируемых функции и ни одна не относится к сканированию.
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
OffTopic:

erlik
У меня антивируса нет, т.к он не нужен. :smile:
 
Автор
T

true

Новичок
Сообщения
3
Репутация
0
все верно erlik написал, там своя библиотека, которая принимает на себя переданные файлы, подготавливает некий файл-задание (у разных ав разного непонятного формата), а затем этот файл-задание передает через командную строку сканеру ав. в этом вся и проблема.
 

AZJIO

Меценат
Меценат
Сообщения
2,892
Репутация
1,196
true
Попробуй открыть библиотеку, на которую ссылается контекстное меню. Например используя DLL Export Viewer, и сделай поиск в Google по запросу ["имя dll" "функция" "имя антивируса"], возможно всё давно уже сделано кем-то.

Нашёл - ссылка
Формат строки:
Код:
avp.com SCAN [<объект проверки>] [<действие>] [<типы файлов>] [<исключения>] [<конфигурационный файл>] [<параметры отчета>] [<дополнительные параметры>]
 
Верх