恐怕答案是“由于新的安全功能,它不会”,但我还是会问。
我有一个 USB 闪存驱动器,用于运行便携式应用程序(谁没有呢?)。我使用 PStart 启动一个我已经使用了几年的漂亮菜单,将我的配置拨入到一些高效的程序中,所以我不想直接切换到另一个程序。
我在驱动器的根目录中有一个 Autorun.inf。其内容为:
[Autorun]
Open=Applications\pstart\PStart.exe
Action=Start PortableApps
Icon=Applications\PortableAppsMenu\PortableAppsMenu.exe
Label=PortableApps
当我在 Windows 7 上插入设备时,系统会提示我选择各种自动启动项不想做:
它在 XP 和 Vista 上运行良好,插入 PStart.exe 后就会启动并且我有菜单。
答案1
答案2
这是我在之前的项目中考虑过的事情,但最终我并没有开始做,但我的方法是编辑以下 PowerShell 脚本来运行我想要的任何应用程序,在我的例子中,它将弹出除特定 USB 驱动器之外的所有驱动器。基本上,该脚本会监视表中的Win32_VolumeChangeEvent
添加内容,然后触发应用程序以及一些事件元数据(例如驱动器号)。它可以适应运行任何应用程序或脚本。
function UsbMountWatcher {
$alarm = New-Object System.Management.EventQuery
$alarm.QueryString = "SELECT * FROM Win32_VolumeChangeEvent WHERE EventType = 2"
New-Object System.Management.ManagementEventWatcher $alarm
}
$pathtompcmdrun = $env:PROGRAMFILES + "\Windows Defender\MpCmdRun.exe"
$watcher = UsbMountWatcher
while ($true) {
$event = $watcher.WaitForNextEvent()
$driveletter = $event.Properties["DriveName"].Value.ToString() + "\"
&$pathtompcmdrun "-Scan" "-File" $driveletter "-DisableRemediation"
Write-Output $LASTEXITCODE
}
$watcher.Stop()
来源:https://gallery.technet.microsoft.com/Custom-scan-a-USB-drive-17b9be2a
进一步阅读:https://alitarhini.wordpress.com/2010/11/05/listen-for-removable-device-events/
这也应该解决合并但不同的 Windows 10 问题:如何在 Windows 10 中插入 USB 驱动器时自动运行批处理文件?