Здравствуйте, уважаемые пользователи Autoit!
Понадобилось тут давеча написать программу для отправки случайного сообщения, взятого из текстового файла .
Основную программу написал почти за минуту, но вот незадача: функция send() не воспринимает (точнее, воспринимает как нажатие клавиш-модификаторов) некоторые символы, а именно: !, #, +, ^, {, }. Их нужно передавать, используя {} для изоляции.
С первыми четырьмя проблем не возникло, но вот { и } загнали меня в тупик из-за моего неумения работать с регулярными выражениями. :stars:
Поиск не дал результатов.
Помогите, пожалуйста.
Код прилагаю.
Понадобилось тут давеча написать программу для отправки случайного сообщения, взятого из текстового файла .
Основную программу написал почти за минуту, но вот незадача: функция send() не воспринимает (точнее, воспринимает как нажатие клавиш-модификаторов) некоторые символы, а именно: !, #, +, ^, {, }. Их нужно передавать, используя {} для изоляции.
С первыми четырьмя проблем не возникло, но вот { и } загнали меня в тупик из-за моего неумения работать с регулярными выражениями. :stars:
Поиск не дал результатов.
Помогите, пожалуйста.
Код прилагаю.
Код:
$THotKey = "{PAUSE}"
$Filename = 'sayit.dat'
$Tpause = 5
$Pre = ''
$Post = '{enter}'
HotKeySet($THotKey,"SendText")
global $lines [0]
global $line = ''
$File = fileopen($Filename,8)
#Region изоляция спецсимволов
Do
$line = FileReadLine($File)
if $line <> '' then
$line=StringReplace($line,"!","{!}")
$line=StringReplace($line,"#","{#}")
$line=StringReplace($line,"+","{+}")
$line=StringReplace($line,"^","{^}")
ReDim $lines[UBound($lines) + 1]
$lines[UBound($lines) - 1] = $line
endif
Until @error=-1
#EndRegion
Global $n=UBound($lines)-1
While 1
sleep(200)
WEnd
Func SendText()
$i = Random(0,$n,1)
Send($Pre)
sleep($Tpause)
Send($lines[$i])
sleep($Tpause)
Send($Post)
EndFunc