beve, можно сделать по другому:
Я на своём компе поставил в авто загрузку скрипт типа:
Код:

#NoTrayIcon
$regRead = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer", "NoDriveTypeAutoRun") ;читаем реестр
If $regRead<>221 Then
$msgReg=MsgBox(4, "NoAutorunRz", "Вы хотите отключить автозапуск всех"&@LF&"типов устройств, кроме привода"&@LF&"(Рекомендуется)")
If $msgReg =6 Then ;если да
$regWrite=RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer", "NoDriveTypeAutoRun", "REG_DWORD", "221")
If $regWrite=0 Then ;если ошибка
MsgBox(48, "NoAutorunRz", "Не удалось добавить инфармацию в реестр")
Exit
EndIf
EndIf
EndIf
While 1
Sleep(3000) ; проверка каждые 3 секунды
Event1() ; выполняем функцию в цикле
WEnd
Func Event1()
$letterDrive = DriveGetDrive( "REMOVABLE" ) ; ищем все съемные носители
If NOT @error Then
;MsgBox(4096,"", "Found " & $var[0] & " drives")
For $i = 1 to $letterDrive[0]
If $letterDrive[$i]<> "a:" Then ;пропускаем дисковод
;$labelDrive = DriveGetLabel( $letterDrive[$i] ) ;узнаём метку найденых
$autorun=FileExists($letterDrive[$i]&"\Autorun.inf") ;ищем файл Autorun.inf
If $autorun=1 Then ;если существует
$msgAut=MsgBox(20,"NoAutorunRz - ВНИМАНИЕ", "На флешке найден файл <"&$letterDrive[$i]&"\autorun.inf>"&@LF&"ВОЗМОЖНО ВИРУС"&@LF&@LF&"Хотите его удалить")
If $msgAut=6 Then
FileSetAttrib($letterDrive[$i]&"\autorun.inf", "-R") ;снять атрибут чтения
FileDelete($letterDrive[$i]&"\autorun.inf")
EndIf
Endif
Endif
Next
EndIf
EndFunc
И при втыкании флешки проверяет наличие файла autorun.inf (все остальное можно удалить ручками)