Недавние сообщения

Страницы: [1] 2 3 ... 10
2
mv6677

На форуме принято помечать тему решенной после получения ответа на свой вопрос!
Вверху или внизу темы нажмите на ссылку такого вида:
Тема не решена
3
Общие вопросы по AutoIt / Как обмениваться информацией с mqtt-брокером ?
« Последний ответ от Юрчище Отправлен Вчера в 23:54:46 »
Как сделать обмен информацией между Autoit-программой и mqtt-брокером ?
Предполагаю два направления решения задачи:

1. Использовать ObjCreate("WinHttp.WinHttpRequest.5.1") https://www.autoitscript.com/forum/topic/187836-mqtt-connection/.
Но мне не удалось понять, как Регистрироваться на сервере, Подписываться на топик и Получать сообщения.

2. Использовать DLL-ки от Windows-сервера Mosqitto.
Но тоже не понятно как это сделать.

Буду признателен за любые идеи или помощь !
4
Стол заказов / Re: [Реестр] Win10: программное изменение размера сетки
« Последний ответ от akoulev Отправлен Вчера в 23:03:25 »
Спасибо, конечно — но "что-то пошло не так" (с).

У меня между иконками было примерно 3 см; запустил скрипт (как я понимаю, он считывает некие параметры из реестра и, удвоенные, пишет обратно) — но после первого же запуска расстояние между иконками стало примерно 6 см (что неплохо вписывается в моё понятие функционирования скрипта). Ok; я поправил тело скрипта, заменив "умножение на 2" на "деление на 3". Запустил, дважды. 6 сантиметров между иконками так и осталось (нужно ли говорить, что половина иконок на экране перестала умещаться); зато резко сузилась зона, где отображается подпись иконки.

А потом "произошло чудо": после перезагрузки всё стало по-прежнему, как было до использования скрипта (что с умножением, что с делением) — т.е., что было в "доскриптовую эпоху".

Словом, очень надеюсь, что вышеизложенное поможет как-то "упорядочить" данный скрипт.
5
Общие вопросы по AutoIt / Re: Зациклить выполнение функции
« Последний ответ от n0kk Отправлен Вчера в 22:24:24 »
Вы хоть понимаете свою функцию?
Видимо нет, теперь понял благодаря вам, и правда прерывание было лишним, я думал что без Else нельзя, ведь конструкция If...ElseIf...Else...EndIf


Добавлено: Вчера в 22:26:41
Благодарю за разъяснение :)
6
Общие вопросы по AutoIt / Re: Зациклить выполнение функции
« Последний ответ от Tempo Отправлен Вчера в 22:16:56 »
Да, так же выполняется два раза, а потом считает до 500

Ну и что это значит? Вы хоть понимаете свою функцию? Если цвет пикселя не соответствует полученному тогда выполнение функции прерывается и она начинается заново. Может проблема в условии? Может вообще не нужно останавливать функцию? Может в вашей функции выход из скрипта был лишним с самого начала?

Код: AutoIt [Выделить]
SplashTextOn("Test Script", "", 100, 50)
For $i = 0 To 500
    ControlSetText("Test Script", "", "Static1", $i)
    _Click()
Next

Func _Click()
    MouseMove(1169, 326, 50)
    $ColorPx = PixelGetColor(1169, 326)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 326)
        MouseClick("left", 1245, 846)
    EndIf

    MouseMove(1169, 338)
    $ColorPx = PixelGetColor(1169, 338)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 338)
        MouseClick("left", 1245, 846)
    EndIf

    MouseMove(1169, 349)
    $ColorPx = PixelGetColor(1169, 349)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 349)
        MouseClick("left", 1245, 846)
    EndIf

    MouseMove(1169, 363)
    $ColorPx = PixelGetColor(1169, 363)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 363)
        MouseClick("left", 1245, 846)
    EndIf
EndFunc
 

7
Общие вопросы по AutoIt / Re: Зациклить выполнение функции
« Последний ответ от n0kk Отправлен Вчера в 22:14:14 »
Вы хоть код тот что выше пробовали?
Да, так же выполняется два раза, а потом считает до 500
8
Общие вопросы по AutoIt / Re: Зациклить выполнение функции
« Последний ответ от Tempo Отправлен Вчера в 22:09:25 »
Вы хоть код тот что выше пробовали?
9
Общие вопросы по AutoIt / Re: Зациклить выполнение функции
« Последний ответ от n0kk Отправлен Вчера в 22:08:15 »
Выполняется один раз если написать просто Return

Попробовал заменить на
Код: AutoIt [Выделить]
$i = 0
While $i <= 50
    _click()
    $i += 1
WEnd
 

Два раза выполняется а потом много раз пишет "Выход по условию"
10
Общие вопросы по AutoIt / Re: Зациклить выполнение функции
« Последний ответ от Tempo Отправлен Вчера в 22:00:54 »
n0kk
Зачем? Это уже какое-то подобие рекурсии зачем оно вам?

Код: AutoIt [Выделить]
Return _click()


Попробуйте почитать справку

Код: AutoIt [Выделить]
SplashTextOn("Test Script", "", 100, 50)
For $i = 0 To 500
    ControlSetText("Test Script", "", "Static1", $i)
    _Click()
Next

Func _Click()
    MouseMove(1169, 326, 50)
    $ColorPx = PixelGetColor(1169, 326)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 326)
        MouseClick("left", 1245, 846)
    Else
        Return
    EndIf

    MouseMove(1169, 338)
    $ColorPx = PixelGetColor(1169, 338)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 338)
        MouseClick("left", 1245, 846)
    Else
        Return
    EndIf

    MouseMove(1169, 349)
    $ColorPx = PixelGetColor(1169, 349)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 349)
        MouseClick("left", 1245, 846)
    Else
        Return
    EndIf

    MouseMove(1169, 363)
    $ColorPx = PixelGetColor(1169, 363)
    If $ColorPx = 16777215 Then
        MouseClick("left", 1245, 846)
    ElseIf $ColorPx = 3708912 Then
        Sleep(25000)
        MouseClick("left", 1169, 363)
        MouseClick("left", 1245, 846)
    Else
        Return
    EndIf
EndFunc
 

Страницы: [1] 2 3 ... 10