Делюсь бесплатным скриптом

Moved Other
  • Долгое время использовал автостарт скриптов BAS при запуске Windows через bat скрипт с аргументом --silent.

    START /wait C:\BAS\CustomPasrseFingerints\CustomPasrserFingerints.exe --silent
    

    Всё работало нормально.

    Однако что-то в последних версиях BAS изменилось, либо что-то изменилось в моём серваке.
    Это уже неважно собственно почему происходит баг.

    Появилась кое-какая проблема в этих случаях:

    • Если интернет на серваке сильно лагает
    • Если интернета нет совсем

    В этих случаях BAS не стартует с батника с аргументом --silent.

    Я сначала грешил на скрипт, полностью прошерстил его:

    1. Логировал OnApplicationStart.
    2. Логировал другие части скрипта.
    3. Ставил паузы и пытался между паузами поймать лог в функции main без каких либо действий внутри шаблона

    После исследования обнаружил, что до функции OnApplicationStart не доходит даже. BAS не создает никаких логов, а просто тихо игнорирует запуск.

    Какой выход из ситуации был:

    1. Написать в поддержку :D Однако это не вариант, вас там никто слушать не будет и разработчик сильно занет чтобы отвлекаться на такие мелочи. Да и вообще ныть в поддержках, скулить и жаловаться на жизнь не наш выход же?

    2. Решить проблему самому. Решение следующее:

    • при старте системы запускается питон скрипт, проверяет есть ли интернет на сервере и если есть то стартует скрипт(ы) BAS с аргументом -- silent.
    • если интернета нет, в цикле ждёт когда такой доступ появиться.

    Как использовать

    1. Установить последний Python https://www.python.org/downloads/
    2. Открыть командую строку. Командная строка - запустить от имени администратора
    3. Установить библиотеку лога: pip install colorlog
    4. Скачать архив start_bas.zip
    5. Открыть скрипт start_bas.py (Visual Studio или Notepad) и в строке 15 в переменной process_commands установить свои пути для запуска BAS скрипта. Это банальный список, если нужно запускать 1 скрипт - оставьте 1 путь, если два скрипта, то два пути, если 3 то 3.
    6. Открыть start_bas ярлык командной строки. ПКМ - ОБЬЕКТ - указать путь где будет лежать скрипт.
    7. Переместить start_bas ярлык в автостарт системы. Выполнить - shell:startup.

    Скриншот, что всё работает:

  • А разве планировщик встроенный в Бас для этого не подходит? юзаю его уже давно
    image.png

  • Thanks for sharing. The start_bas.zip is not available to download. Can you please share it again?

  • @bebetter said in Делюсь бесплатным скриптом:

    Thanks for sharing. The start_bas.zip is not available to download. Can you please share it again?

    Готово, можно скачать снова.
    Но скрипт надо обновить и сделать 3 попытки старта, у меня баг был, стартанул, а там ошибка illegal value

  • ModeratorM Moderator moved this topic from Off topic on
  • ModeratorM Moderator moved this topic from Private Software on