Что нового

Автоматизация Нужна помощь с привязкой

Alex58reg

Новичок
Сообщения
41
Репутация
0
помогите кто понимает пожалуйста
вот код проверки
Код:
[URL='https://autoit-script.ru/docs/keywords/include.htm']#include[/URL] <IniString.au3>
$iControl = _ValidateSerial()
[URL='https://autoit-script.ru/docs/keywords/if.htm']If[/URL] Not [URL='https://autoit-script.ru/docs/macros.htm']@error[/URL] [URL='https://autoit-script.ru/docs/keywords/if.htm']Then[/URL]
    [URL='https://autoit-script.ru/docs/keywords/if.htm']If[/URL] $iControl [URL='https://autoit-script.ru/docs/keywords/if.htm']Then[/URL]
        [URL='https://autoit-script.ru/docs/functions/msgbox.htm']MsgBox[/URL](64, 'Идентификация', 'Идентификация прошла успешно')
    [URL='https://autoit-script.ru/docs/keywords/else.htm']Else[/URL]
        [URL='https://autoit-script.ru/docs/functions/msgbox.htm']MsgBox[/URL](16, 'Идентификация', 'У вас нет доступа к программе')
        [URL='https://autoit-script.ru/docs/keywords/exit.htm']Exit[/URL]
    [URL='https://autoit-script.ru/docs/keywords/if.htm']EndIf[/URL]
[URL='https://autoit-script.ru/docs/keywords/else.htm']Else[/URL]
    [URL='https://autoit-script.ru/docs/keywords/switch.htm']Switch[/URL] [URL='https://autoit-script.ru/docs/macros.htm']@error[/URL]
        [URL='https://autoit-script.ru/docs/keywords/switch.htm']Case[/URL] -1
            [URL='https://autoit-script.ru/docs/functions/msgbox.htm']MsgBox[/URL](16, 'Идентификация', 'Не удалось проверить серийный номер. Проверьте подключение к интернет.')
            [URL='https://autoit-script.ru/docs/keywords/exit.htm']Exit[/URL]
        [URL='https://autoit-script.ru/docs/keywords/switch.htm']Case[/URL] 1
            [URL='https://autoit-script.ru/docs/functions/msgbox.htm']MsgBox[/URL](16, 'Идентификация', 'Произошла ошибка проверки.')
            [URL='https://autoit-script.ru/docs/keywords/exit.htm']Exit[/URL]
    [URL='https://autoit-script.ru/docs/keywords/switch.htm']EndSwitch[/URL]
[URL='https://autoit-script.ru/docs/keywords/if.htm']EndIf[/URL]

[URL='https://autoit-script.ru/docs/keywords/func.htm']Func[/URL] _ValidateSerial()
    [URL='https://autoit-script.ru/docs/keywords/dim.htm']Local[/URL] $s_Serial, $a_Control, $s_TextFromSite

    $s_TextFromSite = [URL='https://autoit-script.ru/docs/functions/inetread.htm']InetRead[/URL]('http://yourdomen.ru/control.ini')
    [URL='https://autoit-script.ru/docs/keywords/if.htm']If[/URL] [URL='https://autoit-script.ru/docs/macros.htm']@error[/URL] [URL='https://autoit-script.ru/docs/keywords/if.htm']Then[/URL] [URL='https://autoit-script.ru/docs/keywords/dim.htm']Return[/URL] [URL='https://autoit-script.ru/docs/functions/seterror.htm']SetError[/URL](-1)
    $s_TextFromSite = [URL='https://autoit-script.ru/docs/functions/binarytostring.htm']BinaryToString[/URL]($s_TextFromSite)
    $s_Serial = [URL='https://autoit-script.ru/docs/functions/drivegetserial.htm']DriveGetSerial[/URL]([URL='https://autoit-script.ru/docs/functions/stringleft.htm']StringLeft[/URL]([URL='https://autoit-script.ru/docs/macros.htm']@ScriptDir[/URL], 2))
    [URL='https://autoit-script.ru/docs/keywords/if.htm']If[/URL] [URL='https://autoit-script.ru/docs/macros.htm']@error[/URL] [URL='https://autoit-script.ru/docs/keywords/if.htm']Then[/URL] [URL='https://autoit-script.ru/docs/keywords/dim.htm']Return[/URL] [URL='https://autoit-script.ru/docs/functions/seterror.htm']SetError[/URL](1)
    $a_Control = _IniString_ReadSection($s_TextFromSite, 'Computers')
    [URL='https://autoit-script.ru/docs/keywords/if.htm']If[/URL] [URL='https://autoit-script.ru/docs/macros.htm']@error[/URL] [URL='https://autoit-script.ru/docs/keywords/if.htm']Then[/URL] [URL='https://autoit-script.ru/docs/keywords/dim.htm']Return[/URL] [URL='https://autoit-script.ru/docs/functions/seterror.htm']SetError[/URL](1)
    [URL='https://autoit-script.ru/docs/keywords/for.htm']For[/URL] $i = 1 [URL='https://autoit-script.ru/docs/keywords/for.htm']To[/URL] $a_Control[0][0]
        [URL='https://autoit-script.ru/docs/keywords/if.htm']If[/URL] $a_Control[$i][1] == $s_Serial [URL='https://autoit-script.ru/docs/keywords/if.htm']Then[/URL] [URL='https://autoit-script.ru/docs/keywords/dim.htm']Return[/URL] [URL='https://autoit-script.ru/docs/functions/seterror.htm']SetError[/URL](0, 0, 1)
    [URL='https://autoit-script.ru/docs/keywords/for.htm']Next[/URL]
    [URL='https://autoit-script.ru/docs/keywords/dim.htm']Return[/URL] [URL='https://autoit-script.ru/docs/functions/seterror.htm']SetError[/URL](0, 0, 0)
[URL='https://autoit-script.ru/docs/keywords/func.htm']EndFunc[/URL]

мне нужно тоже самое только проверка не DriveGetSerial а ProcessorId

не этот Снимок1.PNG а вот этот Снимок.PNG
Сообщение автоматически объединено:

что то с верхним кодом не пошло нормально

#include <IniString.au3>
$iControl = _ValidateSerial()
If Not @error Then
If $iControl Then
MsgBox(64, 'Идентификация', 'Идентификация прошла успешно')
Else
MsgBox(16, 'Идентификация', 'У вас нет доступа к программе')
Exit
EndIf
Else
Switch @error
Case -1
MsgBox(16, 'Идентификация', 'Не удалось проверить серийный номер. Проверьте подключение к интернет.')
Exit
Case 1
MsgBox(16, 'Идентификация', 'Произошла ошибка проверки.')
Exit
EndSwitch
EndIf

Func _ValidateSerial()
Local $s_Serial, $a_Control, $s_TextFromSite

$s_TextFromSite = InetRead('http://yourdomen.ru/control.ini')
If @error Then Return SetError(-1)
$s_TextFromSite = BinaryToString($s_TextFromSite)
$s_Serial = DriveGetSerial(StringLeft(@ScriptDir, 2))
If @error Then Return SetError(1)
$a_Control = _IniString_ReadSection($s_TextFromSite, 'Computers')
If @error Then Return SetError(1)
For $i = 1 To $a_Control[0][0]
If $a_Control[$i][1] == $s_Serial Then Return SetError(0, 0, 1)
Next
Return SetError(0, 0, 0)
EndFunc
 
Верх