1

Тема: AHK: отправка сообщений из txt построчно

Появилась необходимость в скрипте выполняет построчное печатание текста из .txt файла. То есть, каждую строку этого файла по очереди печатает или отправляет через SendInput нажимая ЛКМ после каждой отправки. Выглядить должно примерно так по хронологии
Запуск > Щелчок > отправка первой строки блокнота {enter} > Щелчок > отправка второй строки {enter} и так до конца текстового документа.

Но столкнулся с некоторыми проблемами, не понимаю как обозначить в строке SendInput что необходимо печатать.
И с тем, что при запуске выходит ошибка с чтением нужного блокнота:
http://rgho.st/7RJq478Pq/image.png

1::
Loop
{
    FileReadLine, D:\text.txt, 1
    Click
    SendInput {enter}	
    sleep, 3000
}
return
2::Pause

2 (изменено: belyankin12, 2019-05-09 16:19:38)

Re: AHK: отправка сообщений из txt построчно

Вы почитайте внимательно про команду FileReadLine в справке. Она имеет параметр, который указывает на имя переменной, в которой будет хранится прочитанный текст. Кроме того, в вашем примере скрипт будет бесконечно читать первую строчку (переменная A_Index в помощь). А ещё советую добавить условие if ErrorLevel, ибо цикл не будет останавливаться, если дойдет до конца документа.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.

3 (изменено: rossmad3, 2019-05-09 17:22:05)

Re: AHK: отправка сообщений из txt построчно

belyankin12
Подредактировал код.  Скрипт запускается, но отправляется только первая строка текста. И всё

1::
Loop
{
    FileReadLine, a, D:\text.txt, %A_Index%
     if ErrorLevel
        ExitApp
	Click
    Send %a% {enter}	
    sleep, 3000
2::Pause
}
return

4

Re: AHK: отправка сообщений из txt построчно

rossmad3

1::
Loop
{
    FileReadLine, line, D:\text.txt, %A_Index%
     if ErrorLevel
	{
		MsgBox, 4160, , Готово!
        ExitApp
	}
	FileAppend, %line% `n, %A_ScriptFullPath%
    sleep, 100
}


2::Pause
return


Esc::
{
ExitApp
}

5

Re: AHK: отправка сообщений из txt построчно

Вы вытащите горячую клавишу за пределы цикла. Она и останавливает ваш скрипт.

Когда вы говорите что не можете сделать, вам всего-лишь не хватает фантазии придумать какой-нибудь костыль.