-
AutoIt
(
http://forum.oszone.net/forumdisplay.php?f=103)
проверка флешки по SN
Надо чтобы скрипт проверял флешку по серийнику если он правильный то выполнять скрипт дальше.
|
Можно попробовать посредством WMI:
Код:
AutoItSetOption("MustDeclareVars", 1)
Local $sTargetVolumeSerialNumber = "ABCDEFGH"
Local $bFound = False
Local $oSWbemServicesEx = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Local $cSWbemObjectSet = $oSWbemServicesEx.ExecQuery("SELECT * FROM Win32_LogicalDisk", "WQL", 0)
Local $oSWbemObjectEx
If $cSWbemObjectSet.Count > 0 Then
For $oSWbemObjectEx In $cSWbemObjectSet
ConsoleWrite("Drive: [" & $oSWbemObjectEx.Name & "]" & @TAB & "Serial number: [" & $oSWbemObjectEx.VolumeSerialNumber & "]" & @CRLF) ; Для отладки
If $oSWbemObjectEx.VolumeSerialNumber = $sTargetVolumeSerialNumber Then
ConsoleWrite("Found on drive [" & $oSWbemObjectEx.Name & "]" & @CRLF) ; Для отладки
$bFound = True
ExitLoop
EndIf
Next
EndIf
$oSWbemObjectEx = 0
$cSWbemObjectSet = 0
$oSWbemServicesEx = 0
If Not $bFound Then
Exit(1)
EndIf
;
; Здесь Ваши операторы
;
Exit(0)
|
Код:
$sSerial = "3634030921"
$sDrive = ""
$aDrives = DriveGetDrive ("REMOVABLE")
If IsArray($aDrives) Then
For $i=1 To $aDrives[0]
If DriveGetSerial($aDrives[$i]) == $sSerial Then $sDrive = $aDrives[$i]
Next
EndIf
If $sDrive == "" Then Exit MsgBox(16, "Ошибка", "Не найден требуемый диск")
|
А КАК УЗНАТЬ SN ФЛЕШКИ КОТОРЫЙ ВИДИТ СКРИПТ
|
Anarasius, пример в справке к DriveGetSerial()
|
Время: 03:49.
© OSzone.net 2001-