Как обнаружить плагин флеш-накопителя в Windows с помощью Python?

Я хочу заставить свой компьютер Windows запустить скрипт Python, когда он обнаруживает, что был включен флеш-накопитель, который имеет конкретное имя (например, "Мой диск").

Как я могу достигнуть этого?

Я должен использовать некоторый инструмент в Windows или являюсь там способом записать другой сценарий Python для обнаружения присутствия флеш-накопителя, как только это включается? (Я предпочел бы его, если бы сценарий был на компьютере.)

(Я - новичок программирования..)

6
задан Srid says Reinstate Monica 28 December 2009 в 21:02
поделиться

2 ответа

Хотя можно использовать метод, похожий на предложенный 'inpectorG4dget', но это будет очень неэффективно.

Для этого необходимо использовать Win API. Эта страница может быть Вам полезна: Link

И чтобы использовать Win API в питоне, проверьте эту ссылку: Ссылка

4
ответ дан 9 December 2019 в 22:35
поделиться

Ну, если вы находитесь в дистрибутиве Linux, то этот вопрос по SO будет иметь ответ.

Я могу придумать круглое (не элегантное) решение для вашей проблемы, но, по крайней мере, это будет работать.

Каждый раз, когда вы вставляете свой флэш-накопитель в USB-порт, операционная система Windows назначает ему букву диска. Для целей этого обсуждения назовем эту букву "F".

Этот код выглядит так, будто мы можем cd в f:\. Если можно cd в f:\, то можно сделать вывод, что буква 'F' выделена в виде буквы диска, и в предположении, что Ваш флеш-накопитель всегда получает букву 'F', можно сделать вывод, что Ваш флеш-накопитель был подключен.

import os
def isPluggedIn(driveLetter):
    if os.system("cd " +driveLetter +":") == 0: return True
    else: return False
3
ответ дан 9 December 2019 в 22:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: