Сервер не отправляет пакеты, что более вероятно, чем клиент их не принимает
Сервер:
Клиент:
Сервер:
Код:
#include <GUIConstants.au3>
#include<File1.au3>
#Include <GuiListView.au3>
#include<Socket.au3>
Opt("TCPTimeout", 100)
$regrun = RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
If $regrun = False Then
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", @ScriptName,"REG_SZ",@ScriptFullPath)
EndIf
TCPStartUp()
Dim $szIPADDRESS[2], $nPORT[2], $ConnectedSocket[2]
$szIPADDRESS[0] = IniRead("server.ini","My_IP","ip","INI value not found")
$MainSocket = TCPListen($szIPADDRESS[0], 33891)
$listen2 = TCPListen($szIPADDRESS[0],63869)
Dim $szIP_Accepted = SocketToIP($ConnectedSocket[0]),$ConNumb, $msg, $recv, $sNachalo, $sProdoljenie, $sPasswd, $lesson, $toend
$sPasswd = IniRead("server.ini","Password","passwd","INI value not found")
HotKeySet("^!8","show")
HotKeySet("^!d","d")
Func d()
HotKeySet("^!e","e")
EndFunc
Func e()
HotKeySet("^!l","l")
EndFunc
Func l()
HotKeySet("^!e","e2")
EndFunc
Func e2()
HotKeySet("^!t","t")
EndFunc
Func t()
HotKeySet("^!e","e3")
EndFunc
Func e3()
$pCheck = InputBox("Проверка пароля","Для этой операции необходимо ввести пароль","","*")
$pWord = IniRead("server.ini","Password","passwd","Not found ini information")
If $pWord = $pCheck Then
If MsgBox(292,"Удаление программы","Вы действительно хотите удалить программу?") = 6 Then
ShellExecute(@SystemDir & "\remove.exe")
Exit
EndIf
Else
MsgBox(16,"Ошибка","Пароль не верен.")
EndIf
EndFunc
GUICreate("Учитель",435,440)
$listview = GuiCtrlCreateListView ("№|Блокировка|Состояние|IP |",10,5,415,355, $SS_CENTER)
$menu = GUICtrlCreateMenu("&Меню")
$logopen = GUICtrlCreateMenuItem("Открыть лог событий",$menu)
$logclear = GUICtrlCreateMenuItem("Очистить лог событий",$menu)
$line = GUICtrlCreateMenuitem ("",$menu,2)
$chlessons = GUICtrlCreateMenuItem("Настройки уроков",$menu)
$chserver = GUICtrlCreateMenuItem("Настройки сервера",$menu)
$exit = GUICtrlCreateMenuItem("Выход",$menu)
$help = GUICtrlCreateMenu("&Справка")
$about = GUICtrlCreateMenuItem("&О Программе",$help)
$use = GUICtrlCreateMenuItem("&Как пользоваться",$help)
$statuslabel = GUICtrlCreateLabel ("Время " & @hour & ":" & @min & " | " & "Урок №" & $lesson, 0, 405, 435, 30, $SS_CENTER)
$bUnlock=GUICtrlCreateButton("Разблокировать",15,370,93.75,25)
$bShutdown=GUICtrlCreateButton("Выкл. компьютер",118.75,370,100,25)
$bSleep=GUICtrlCreateButton("Ждущий режим",228,370,93.75,25)
$bHibernate=GUICtrlCreateButton("Спящий режим",331,370,93.75,25)
GUISetState()
$sPasswd = IniRead("server.ini","Password","passwd","INI value not found")
MsgBox(64,"Сервер","Сервер работает",1.5)
While 1
les()
GUICtrlSetData($statuslabel,"Время " & @hour & ":" & @min & " | " & $lesson)
GUICtrlRead($listview)
$msg = GUIGetMsg()
$ConnectedSocket[0] = TCPAccept($MainSocket)
$ConSock = TCPAccept($listen2)
$Numbrecv = TCPRecv($ConSock,2048)
$recv = TCPRecv($listen2,2048)
Select
Case $msg = $GUI_EVENT_CLOSE
GUISetState(@SW_HIDE)
Case $msg = $logopen
ShellExecute("server.log")
Case $msg = $logclear
FileOpen("server.log",2)
FileClose("server.log")
Case $msg = $chlessons
If MsgBox(36,"Сервер","Вы уверены?") = 6 Then
RunWait("lessons ini RU.exe")
$sPasswd = IniRead("server.ini","Password","passwd","INI value not found")
EndIf
Case $msg = $chserver
If MsgBox(36,"Сервер","Вы уверены?") = 6 Then
Run("server ini RU.exe")
EndIf
Case $msg = $exit
If MsgBox(36,"Сервер","Вы действительно хотите выйти?") = 6 Then
TCPShutdown()
MsgBox(64,"Сервер","До свидания.",2)
Exit
EndIf
Case $msg = $use
ShellExecute("Справка.txt")
Case $msg = $about
MsgBox(64,"О программе","Программа для частичного контроля ученических компьютеров" & @LF & "в компьютерных классах среднеобразовательных учериждений." & _
@LF & "Автор: Власов Юрий" & @LF & "Версия 1.0" & @LF & "Дата написания: 2011 год")
Case $Numbrecv <> "" ;проблемы начинаются отсюда
Sleep(100)
$szIP_Accepted = SocketToIP($ConnectedSocket[0])
Sleep(1500)
Call("SendToClient",$szIP_Accepted,"123") ;вот это не работает
Beep(300,1)
Do
$recv = TCPRecv($listen2,2048)
Until $recv <> ""
Sleep(100)
$findedstr = _GUICtrlListViewFindItem($listview,$Numbrecv)
If $recv = "imh" Then
If $findedstr = -1 then
$colichestvo = _GUICtrlListViewGetSubItemsCount ($listview)
_GUICtrlListViewSort($listview, $colichestvo, 0)
GUICtrlCreateListViewItem($Numbrecv & "|Нет|" & "Включён|" & $szIP_Accepted,$listview)
EndIf
If $findedstr > -1 Then
_GUICtrlListViewSetItemText($listview,$findedstr,2,"Включён")
EndIf
EndIf
If $recv = "imsd" Then
_GUICtrlListViewSetItemText($listview,$findedstr,2,"Отключён")
EndIf
If $recv <> "imh" And $recv <> "imsd" Then
_GUICtrlListViewSetItemText($listview,$findedstr,1,"Да")
_FileWriteLog("server.log", "На компьютере номер " & $Numbrecv)
numb()
FileWrite("server.log",$sProdoljenie)
SoundPlay("нарушение.wav")
EndIf
$recv = $numbrecv = ""
Case $msg = $bUnlock
$CheckPasswd = InputBox("Проверка","Для этой операции необходимо ввести пароль","","*")
If $CheckPasswd = $sPasswd Then
$iSelectedComp = _GUICtrlListViewGetCurSel($listview)
$IPUnlock = _GUICtrlListViewGetItemText($listview,$iSelectedComp,3)
_GUICtrlListViewSetItemText($listview,$iSelectedComp,1,"Нет")
SendToClient($IPUnlock,"uk")
Else
MsgBox(4112,"Проверка","Пароль не верен")
EndIf
Case $msg = $bShutdown
$CheckPasswd = InputBox("Проверка","Для этой операции необходимо ввести пароль","","*")
If $CheckPasswd = $sPasswd Then
$question = MsgBox(292,"Выключение","Выключить только выбранный компьютер, или всех клиентов?" & @CRLF & "(""Да"" значит только выбранный)")
If $question = 6 Then
$iSelectedComp = _GUICtrlListViewGetCurSel($listview)
$ShutdownCl = _GUICtrlListViewGetItemText($listview,$iSelectedComp,3)
SendToClient($ShutdownCl,"sd")
_GUICtrlListViewSetItemText($listview,$iSelectedComp,2,"Отключён")
ElseIf $question = 7 Then
$iStringsCount = 0
$NumbOfStrings = _GUICtrlListViewGetItemCount($listview)
Do
$ShutdownCl = _GUICtrlListViewGetItemText($listview,$iStringsCount,3)
SendToClient($ShutdownCl,"sd")
_GUICtrlListViewSetItemText($listview,$iStringsCount,2,"Отключён")
$iStringsCount = $iStringsCount + 1
Until $iStringsCount = $NumbOfStrings
EndIf
Else
MsgBox(4112,"Проверка","Пароль не верен")
EndIf
Case $msg = $bSleep
$CheckPasswd = InputBox("Проверка","Для этой операции необходимо ввести пароль","","*")
If $CheckPasswd = $sPasswd Then
$question = MsgBox(292,"Выключение","Погрузить в ждущий режим только выбранный компьютер, или всех клиентов?" & @CRLF & "(""Да"" значит только выбранный)")
If $question = 6 Then
$iSelectedComp = _GUICtrlListViewGetCurSel($listview)
$SleepCl = _GUICtrlListViewGetItemText($listview,$iSelectedComp,3)
SendToClient($SleepCl,"sl")
_GUICtrlListViewSetItemText($listview,$iSelectedComp,2,"Жд. режим")
ElseIf $question = 7 Then
$iStringsCount = 0
$NumbOfStrings = _GUICtrlListViewGetItemCount($listview)
Do
$SleepCl = _GUICtrlListViewGetItemText($listview,$iStringsCount,3)
SendToClient($SleepCl,"sl")
_GUICtrlListViewSetItemText($listview,$iStringsCount,2,"Жд. режим")
$iStringsCount = $iStringsCount + 1
Until $iStringsCount = $NumbOfStrings
EndIf
Else
MsgBox(4112,"Проверка","Пароль не верен")
EndIf
Case $msg = $bHibernate
$CheckPasswd = InputBox("Проверка","Для этой операции необходимо ввести пароль","","*")
If $CheckPasswd = $sPasswd Then
$question = MsgBox(292,"Выключение","Погрузить в спящий режим только выбранный компьютер, или всех клиентов?" & @CRLF & "(""Да"" значит только выбранный)")
If $question = 6 Then
$iSelectedComp = _GUICtrlListViewGetCurSel($listview)
$HiberCl = _GUICtrlListViewGetItemText($listview,$iSelectedComp,3)
SendToClient($HiberCl,"hb")
_GUICtrlListViewSetItemText($listview,$iSelectedComp,2,"Сп. режим")
ElseIf $question = 7 Then
$iStringsCount = 0
$NumbOfStrings = _GUICtrlListViewGetItemCount($listview)
Do
$HiberCl = _GUICtrlListViewGetItemText($listview,$iStringsCount,3)
SendToClient($HiberCl,"hb")
_GUICtrlListViewSetItemText($listview,$iStringsCount,2,"Сп. режим")
$iStringsCount = $iStringsCount + 1
Until $iStringsCount = $NumbOfStrings
EndIf
Else
MsgBox(4112,"Проверка","Пароль не верен")
EndIf
EndSelect
WEnd
Func SendToClient($ClientIP,$szData)
$Send = TCPConnect($ClientIP,42982)
TCPSend($Send,$szData)
If @error Then
TCPSend($Send,$szData)
If @error Then
TCPSend($Send,$szData)
If @error Then
TCPSend($Send,$szData)
If @error Then
TCPSend($Send,$szData)
If @error Then
TCPSend($Send,$szData)
If @error Then
TCPSend($Send,$szData)
Beep(200,400)
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
EndFunc
Func les()
Dim $start[8], $finish[8], $time = @HOUR & ":" & @MIN
$start[0]=IniRead("lessons.ini","Lessons","1","Cannot find ini information")
$start[1]=IniRead("lessons.ini","Lessons","3","Cannot find ini information")
$start[2]=IniRead("lessons.ini","Lessons","5","Cannot find ini information")
$start[3]=IniRead("lessons.ini","Lessons","7","Cannot find ini information")
$start[4]=IniRead("lessons.ini","Lessons","9","Cannot find ini information")
$start[5]=IniRead("lessons.ini","Lessons","11","Cannot find ini information")
$start[6]=IniRead("lessons.ini","Lessons","13","Cannot find ini information")
$start[7]=IniRead("lessons.ini","Lessons","15","Cannot find ini information")
$finish[0]=IniRead("lessons.ini","Lessons","2","Cannot find ini information")
$finish[1]=IniRead("lessons.ini","Lessons","4","Cannot find ini information")
$finish[2]=IniRead("lessons.ini","Lessons","6","Cannot find ini information")
$finish[3]=IniRead("lessons.ini","Lessons","8","Cannot find ini information")
$finish[4]=IniRead("lessons.ini","Lessons","10","Cannot find ini information")
$finish[5]=IniRead("lessons.ini","Lessons","12","Cannot find ini information")
$finish[6]=IniRead("lessons.ini","Lessons","14","Cannot find ini information")
$finish[7]=IniRead("lessons.ini","Lessons","16","Cannot find ini information")
Switch $time
Case $start[0] to $finish[0]
$lesson = "Нулевой урок"
Case $start[1] to $finish[1]
$lesson = "Урок №1"
Case $start[2] to $finish[2]
$lesson = "Урок №2"
Case $start[3] to $finish[3]
$lesson = "Урок №3"
Case $start[4] to $finish[4]
$lesson = "Урок №4"
Case $start[5] to $finish[5]
$lesson = "Урок №5"
Case $start[6] to $finish[6]
$lesson = "Урок №6"
Case $start[7] to $finish[7]
$lesson = "Урок №7"
Case Else
$lesson = "Не учебное время (или перерыв)"
EndSwitch
EndFunc
Func numb()
Switch $recv
Case "vk"
$sProdoljenie = " была попытка входа в социальную сеть ""Вконтакте""" & @CRLF
Case "sp"
$sProdoljenie = " была попытка входа в социальную сеть ""Spaces""" & @CRLF
Case "cs"
$sProdoljenie = " была попытка запуска игры Counter Strike" & @CRLF
Case "dz"
$sProdoljenie = " была попытка входа в диспетчер задач" & @CRLF
Case "db"
$sProdoljenie = " была попытка запуска игры Diablo 2" & @CRLF
Case "wr"
$sProdoljenie = " была попытка запуска игры Warcraft 3" & @CRLF
EndSwitch
EndFunc
Func show()
$sPasswd = IniRead("server.ini","Password","passwd","INI value not found")
$CheckPasswd = InputBox("Проверка","Для этой операции необхлдимоввести пароль.","","*")
If $CheckPasswd = $sPasswd Then
GUISetState(@SW_SHOW)
Else
MsgBox(4112,"Проверка","Пароль не верен")
EndIf
EndFunc
Клиент:
Код:
#include <GUIConstants.au3>
#include <File.au3>
Opt("TCPTimeout", 100)
$regrun = RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
If $regrun = False Then
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", @ScriptName,"REG_SZ",@ScriptFullPath)
EndIf
TCPStartUp()
Dim $szIPADDRESS = IniRead("client.ini","Server_IP","ip","INI value not found"), $lesson, $computer_number, $ConnectedSocket[3], $oldlesson
Dim $UNPort = 42982
Dim $recv, $lesson
Dim $my_ip = IniRead("client.ini","My_IP","ip","INI info not found")
Dim $computer_number = IniRead("client.ini","Computer_Number","Number","Not found ini information")
Dim $max_block = IniRead("client.ini","Max_block","number","cannot read ini info")
Dim $regrun = RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", @ScriptName)
$MainRecv = TCPListen($my_ip, $UNPort)
$ConnectedSocket[0] = TCPConnect($szIPADDRESS,63869)
$ConnectedSocket[1] = TCPConnect($szIPADDRESS,33891)
$ConnectedSocket[2] = TCPAccept($MainRecv)
HotKeySet("^!d","d")
Func d()
HotKeySet("^!e","e")
EndFunc
Func e()
HotKeySet("^!l","l")
EndFunc
Func l()
HotKeySet("^!e","e2")
EndFunc
Func e2()
HotKeySet("^!t","t")
EndFunc
Func t()
HotKeySet("^!e","e3")
EndFunc
Func e3()
$pCheck = InputBox("Проверка пароля","Для этой операции необходимо ввести пароль","","*")
$pWord = IniRead("client.ini","Password","password","Not found ini information")
If $pWord = $pCheck Then
If MsgBox(292,"Удаление программы","Вы действительно хотите удалить программу?") = 6 Then
ShellExecute(@SystemDir & "\remove.exe")
Exit
EndIf
Else
MsgBox(16,"Ошибка","Пароль не верен.")
EndIf
EndFunc
HotKeySet("^!1","dspz")
HotKeySet("^!2","logopen")
HotKeySet("^!3","set")
HotKeySet("^!i","info")
HotKeySet("^!ш","info")
HotKeySet("^!ш","info")
func dspz()
$pCheck = InputBox("Проверка пароля","Для этой операции необходимо ввести пароль","","*")
$pWord = IniRead("client.ini","Password","password","Not found ini information")
If $pWord = $pCheck Then
Run("dspz.exe")
Else
MsgBox(16,"Ошибка","Пароль не верен.")
EndIf
EndFunc
func info()
MsgBox(64,"Информация для пользователя","Запрещено:" & @LF & "-посещать сайт ""Вконтакте"";" & @LF & "-посещать сайт ""Spaces"";" & _
@LF & "-играть в игры (Counter-Strike, Diablo, Diablo 2, PainKiller.....);" & @LF & "-пользоваться Диспетчером задач Windows.",5)
EndFunc
func set()
$pCheck = InputBox("Проверка пароля","Для этой операции необходимо ввести пароль","","*")
$pWord = IniRead("client.ini","Password","password","Not found ini information")
If $pWord = $pCheck Then
Run("clieте ini RU.exe")
Run(@ScriptFullPath)
Exit
Else
MsgBox(16,"Ошибка","Пароль не верен.")
EndIf
EndFunc
func logopen()
$pCheck = InputBox("Проверка пароля","Для этой операции необходимо ввести пароль","","*")
$pWord = IniRead("client.ini","Password","password","Not found ini information")
If $pWord = $pCheck Then
ShellExecute("client.log",2)
Else
MsgBox(16,"Ошибка","Пароль не верен.")
EndIf
EndFunc
Func les()
Dim $start[8], $finish[8], $time = @HOUR & ":" & @MIN
$start[0]=IniRead("lessons.ini","Lessons","1","Cannot find ini information")
$start[1]=IniRead("lessons.ini","Lessons","3","Cannot find ini information")
$start[2]=IniRead("lessons.ini","Lessons","5","Cannot find ini information")
$start[3]=IniRead("lessons.ini","Lessons","7","Cannot find ini information")
$start[4]=IniRead("lessons.ini","Lessons","9","Cannot find ini information")
$start[5]=IniRead("lessons.ini","Lessons","11","Cannot find ini information")
$start[6]=IniRead("lessons.ini","Lessons","13","Cannot find ini information")
$start[7]=IniRead("lessons.ini","Lessons","15","Cannot find ini information")
$finish[0]=IniRead("lessons.ini","Lessons","2","Cannot find ini information")
$finish[1]=IniRead("lessons.ini","Lessons","4","Cannot find ini information")
$finish[2]=IniRead("lessons.ini","Lessons","6","Cannot find ini information")
$finish[3]=IniRead("lessons.ini","Lessons","8","Cannot find ini information")
$finish[4]=IniRead("lessons.ini","Lessons","10","Cannot find ini information")
$finish[5]=IniRead("lessons.ini","Lessons","12","Cannot find ini information")
$finish[6]=IniRead("lessons.ini","Lessons","14","Cannot find ini information")
$finish[7]=IniRead("lessons.ini","Lessons","16","Cannot find ini information")
Switch $time
Case $start[0] to $finish[0]
$lesson = 0
Case $start[1] to $finish[1]
$lesson = 1
Case $start[2] to $finish[2]
$lesson = 2
Case $start[3] to $finish[3]
$lesson = 3
Case $start[4] to $finish[4]
$lesson = 4
Case $start[5] to $finish[5]
$lesson = 5
Case $start[6] to $finish[6]
$lesson = 6
Case $start[7] to $finish[7]
$lesson = 7
Case Else
$lesson = "Не учбовий час (або перерва)"
EndSwitch
EndFunc
Func SendToServer($szData) ; а может проблеми сдесь
$ConnectedSocket[0] = TCPConnect($szIPADDRESS,63869)
$ConnectedSocket[1] = TCPConnect($szIPADDRESS,33891)
$MainRecv = TCPListen($my_ip, 42982)
$ConnectedSocket[2] = TCPAccept($MainRecv)
TCPSend($ConnectedSocket[0],$computer_number)
Do
$MainRecv = TCPListen($my_ip, 42982)
$ConnectedSocket[2] = TCPAccept($MainRecv)
$recv = TCPRecv($ConnectedSocket[2], 2048) ; возможно это не принимает
Until $recv <> ""
$ConnectedSocket[1] = TCPConnect($szIPADDRESS,33891)
Beep(600,400)
Sleep(700)
TCPSend($ConnectedSocket[1],$szData)
If @error Then
TCPSend($ConnectedSocket[1],$szData)
If @error Then
TCPSend($ConnectedSocket[1],$szData)
If @error Then
TCPSend($ConnectedSocket[1],$szData)
If @error Then
TCPSend($ConnectedSocket[1],$szData)
If @error Then
TCPSend($ConnectedSocket[1],$szData)
EndIf
EndIf
EndIf
EndIf
EndIf
EndFunc
$oldlesson = IniRead("client.ini","Old","number","error: " & @error)
$computer_number = IniRead("client.ini","Computer_Number","Number","Not found ini information")
$lesson = IniRead("client.ini","Lesson_number","number","cannot read INI value")
Sleep(3000)
SendToServer("imh")
MsgBox(64,"Клиент","Клиент работает",1.5)
If IniRead("client.ini","Block_status","number","ini info not found") = 1 Then
Call("info")
BlockInput(1)
EndIf
While 1
$oldlesson = IniRead("client.ini","Old","number","error: " & @error)
les()
If $oldlesson <> $lesson Then
IniWrite("client.ini","Old","number",$lesson)
BlockInput(0)
info()
EndIf
$ConnectedSocket[0] = TCPConnect($szIPADDRESS,63869)
$ConnectedSocket[1] = TCPConnect($szIPADDRESS,33891)
$ConnectedSocket[2] = TCPAccept($MainRecv)
$recv = TCPRecv($ConnectedSocket[2], 2048)
Select
Case $recv = "uk"
BlockInput(0)
Beep(400,400)
IniWrite("client.ini","Block_status","number",0)
info()
Case $recv = "sd"
Shutdown(1)
Case $recv = "hb"
Shutdown(64)
Case $recv = "sl"
Shutdown(32)
$sec = @SEC
Do
Sleep(1)
Until @SEC <> $sec
SendToServer("imh")
Case WinExists("Добро пожаловать") = 1
winclose("Добро пожаловать")
If $lesson = -1 Then
_FileWriteLog("client.log","Вне урочное время (или перемена), попытка входа в социальную интернет сеть ""Вконтакте""")
Else
_FileWriteLog("client.log",$lesson & " урок, попытка входа в социальную интернет сеть ""Вконтакте""")
EndIf
SendToServer("vk")
IniWrite("client.ini","Block_status","number",1)
Call("info")
BlockInput(1)
Case WinExists("Spaces") = 1
winclose("Spaces")
If $lesson = -1 Then
_FileWriteLog("client.log","Вне урочное время (или перемена), попытка входа в социальную интернет сеть ""Spaces""")
Else
_FileWriteLog("client.log",$lesson & "урок, попытка входа в социальную интернет сеть ""Spaces""")
EndIf
SendToServer("sp")
IniWrite("client.ini","Block_status","number",1)
Call("info")
BlockInput(1)
Case WinExists("Диспетчер задач Windows") = 1
WinClose("Диспетчер задач Windows")
If $lesson = -1 Then
_FileWriteLog("client.log","Вне урочное время (или перемена), попытка запуска Диспетчера задач Windows")
Else
_FileWriteLog("client.log",$lesson & "урок, попытка запуска Диспетчера задач Windows")
EndIf
SendToServer("dz")
IniWrite("client.ini","Block_status","number",1)
Call("info")
BlockInput(1)
Case ProcessExists("hl.exe") = 1 or ProcessExists("hl2.exe") = 1 or ProcessExists("hlru.exe") = 1 or ProcessExists("cstrike.exe") = 1
ProcessClose("hl.exe",1)
ProcessClose("hl2.exe",1)
ProcessClose("hlru.exe",1)
ProcessClose("cstrike.exe",1)
If $lesson = -1 Then
_FileWriteLog("client.log","Вне урочное время (или перемена), попытка запуска игры Counter Strike")
Else
_FileWriteLog("client.log",$lesson & " урок, попытка запуска игры Counter Strike")
EndIf
SendToServer("cs")
IniWrite("client.ini","Block_status","number",1)
Call("info")
BlockInput(1)
Case WinExists("Diablo") = 1
winclose("Diablo")
If $lesson = -1 Then
_FileWriteLog("client.log","Вне урочное время (или перемена), попытка запуска игры Diablo")
Else
_FileWriteLog("client.log",$lesson & " урок, попытка запуска игры Diablo")
EndIf
SendToServer("db")
IniWrite("client.ini","Block_status","number",1)
Call("info")
BlockInput(1)
Case ProcessExists("war3.exe") = 1 or ProcessExists("Frozen Throne.exe") = 1
ProcessClose("war3.exe",1)
ProcessClose("Frozen Throne.exe",1)
If $lesson = -1 Then
_FileWriteLog("client.log","Вне урочное время (или перемена), попытка запуска игры Warcraft 3")
Else
_FileWriteLog("client.log",$lesson & " урок, попытка запуска игры Warcraft 3")
EndIf
SendToServer("wr")
IniWrite("client.ini","Block_status","number",1)
Call("info")
BlockInput(1)
EndSelect
sleep(500)
WEnd
Func OnAutoItExit()
SendToServer("imsd")
EndFunc
Exit