Windows 用于在插入usb时运行文件的批处理sript
当插入pendrive时,是否有任何批处理脚本可用于运行系统中保存的文件(例如:C:\Program Files\abc.exe)Windows 用于在插入usb时运行文件的批处理sript,windows,batch-file,Windows,Batch File,当插入pendrive时,是否有任何批处理脚本可用于运行系统中保存的文件(例如:C:\Program Files\abc.exe) 我的想法是,执行此批处理脚本时,将添加或修改一些注册表项,从而使系统中的文件(本例为:C:\Program Files\abc.exe)在插入pendrive时运行我将添加到SmokeyHP的回答中,即您可以在pendrive上放置一个标识文件。具有唯一名称的东西。按计划运行的脚本可以枚举可用驱动器并查找该文件名。它看起来效率不高,但我不知道有没有添加USB触发器。
我的想法是,执行此批处理脚本时,将添加或修改一些注册表项,从而使系统中的文件(本例为:C:\Program Files\abc.exe)在插入pendrive时运行我将添加到SmokeyHP的回答中,即您可以在pendrive上放置一个标识文件。具有唯一名称的东西。按计划运行的脚本可以枚举可用驱动器并查找该文件名。它看起来效率不高,但我不知道有没有添加USB触发器。这不是一个批处理解决方案,但WMI内置了一些功能,您可以使用这些功能。注意一个类似的问题 在您的情况下,代码是:
$query = "SELECT * FROM Win32_DeviceChangeEvent WHERE EventType = 2"
Register-WMIEvent -Query $query -Action { invoke-item "C:\Program Files\abc.exe"}
如果您需要查找(或筛选)特定的pendrive,则需要做更多的工作。一个简单的方法是每x秒/分钟运行一次,将驱动器号列表保存到文件中,并查看驱动器号的数量在调用之间是否发生变化。虽然可能有更直接的方法,可能是使用.vbs文件。我假设您禁用了
自动运行
?我是wmi新手,我将上述脚本保存为wmi.vbs并尝试打开它,但它显示以下错误:“行:1;字符:1;错误:无效字符;代码:800A0408;源:Microsoft VB…”,因为它不是VBScript,这是地狱。