2011-01-12 55 views

回答

3

(回答你的问题,唯一的问题。)

对于Windows,你需要创建一个窗口,并处理WM_DEVICECHANGE消息,特别是DBT_DEVICEARRIVAL事件(这是无需注册自动发送)。

要做到这一点从Python没有创建一个窗口,据我所知最好的,你可以做的就是定期测试根路径是否存在(每秒一次可能是足够的,如果你需要响应比Python更快是不会为你工作):

import os.path 
for letter in "ABCDEFGHIJKLMNOPQRSTUVWXYZ": 
    drive_mounted[letter] = os.path.exists(letter + ":") 

(回答你的问题非问题)

操作系统检测到USB/eSATA设备,因为在该个USB/eSATA控制器主板会在CPU上产生中断。操作系统检测到此中断并询问控制器有关设备,安装必要的驱动程序,激活驱动程序,识别安装点(驱动器号)并播放声音效果。

(这与Python没有任何关系,所以我认为它也与这个问题无关。)

+0

这是很棒的信息Zooba,谢谢。那么在设备连接到系统时如何自动执行某些任务,例如获取所有媒体文件的列表并检查系统中是否存在这些任务? – VarunVyas 2011-01-12 16:44:43