Поместите какой-нибудь идентификационный файл на диск и выполните итерации дисков. Если вы найдете указанный файл, вы знаете, что нашли Pendrive. Это перестанет работать, если указанный файл отсутствует.
Примером этого может быть: Обнаружение USB и копирование . на USB-накопитель с помощью пакетного скрипта
В соответствии с этим самым простым способом было бы предположить наличие файла с именем «USB.txt»:
@echo off for %%d in (D: E: F: G: H: I: etc...) do ( if exist %%d\USB.txt ( echo USB at drive %%d connected %%d start sound driver.exe start tochpad driver.exe ) )
Для лучшего решения (ов) проверьте вопрос, который я связал. Выше уже есть несколько ловушек, так как кто-то может использовать A: и B: как обычные буквы диска или USB.txt может не присутствовать.
Если вы посмотрите на «исправленное» решение из этого вопроса, это будет:
@echo off for /F "tokens=1*" %%a in ('fsutil fsinfo drives') do ( for %%c in (%%b) do ( for /F "tokens=3" %%d in ('fsutil fsinfo drivetype %%c') do ( if %%d equ Removable ( echo Drive %%c is Removable (USB^) %%c start sound driver.exe start tochpad driver.exe ) ) ) )
То, что я могу сказать, fsutil
должно быть выполнено с правами администратора, так что вам придется следить за этим в зависимости от того, что вы делаете.