Разработать монитор запуска приложения
Цена договорная
•
наличный расчёт, безналичный расчёт, электронные деньги
Пример
аналога:
Apache монитор,
который висит в трее и позволяет управлять
сервисом апачаРазница только
в том что будет только один уровень
выпадающего меню.
Требования:
нужно на выходе:
Нужно иметь
возможность менять параметры запуска
приложения без перекомпиляции, поэтому
рядом с файлом exe должен лежать файл
config.ini.
Конфиг:
# IP-address of the
server with application
addr = 0.0.0.0
# Port on the
application server
port = 56780
# Path to php.exe
php = php
addr — адрес
на котором будет запущен сервер.
port — порт
который будет слушаться
php — путь
к php интерпретатору. Тут стоит
пояснить, если интерпретатор установлен
на компьютере пользователя, то в консоли
он доступен напрямую:
> php -i
Но в большинстве
случаев установлен не будет. Для решения
этой проблемы в конечной сборке приложения
присутствует портативная версия
интерпретатора. То есть параметр php
имеет вид:
# Path to php.exe
php =
./bin/php/php.exe
Описание
задачи:
Валидация
пути:
Если в пути
расположения программы присутствуют
символы не входящие в таблицу ASCII, то
приложение не запустится. Соответственно
первым делом, программа после запуска
должна проверить путь на котором она
запущена. Если путь не корректен выдать
пользователю окно вида:
Текст сообщения
об ошибке:
The application can
not run in the current folder. Move it to another folder, for example
in the folder: C:\
Заголовок
сообщения: AnimeDB
После выдачи
сообщения закрыть программу.
Проверка
перемещения:
Далее, если
все хорошо, то нужно проверить перемещалась
ли программа с последнего раза и если
да, то выполнить команду:
php ./app/console
cache:clear --env=prod -no-debug
Эта команда
чистит кэш, он к сожалению привязан к
пути расположения программу
Путь последнего
расположения программы можно хранить
в файле: ./bin/.pwd
Есть пример
реализации в Bash и VBScript
php —
это переменная, значение которой берем
из конфига
Дожидаемся
окончания чистки кэша и переходим к
следующему этапу.
Запуск
процессов:
запускаем в
фоне 2 процесса
php -S 0.0.0.0:56780
-t ./web ./app/router.php >nul 2>&1
php -f ./app/console
animedb:task-scheduler >nul 2>&1
соответственно
также часть параметров берем из конфига
Интерфейс:
После выполнения
всех задач в трее появляется иконка с
программой как и в случае апача.
Щелкая на ней
левой кнопкой, появляется выпадающее
меню с пунктами:
выполняет соответствующие действия
При щелчке
правой кнопкой мыши появляется выпадающее
меню с пунктами:
открывает браузер по умолчанию на
адресе:
http://anime-db.org/
Щелчек на Exit
стопает запущенные процессы и выключает
программу
При наведении
на иконку в трее, вылезает подсказка:
AnimeDB
Желательно:
(перевод пунктов
меню и сообщений об ошибках)
Переводы:
Сейчас нужно
только две локали ru и en (это если
будет делаться мультиязычность).
Start - Старт
Stop - Стоп
Restart - Перезапуск
About - О программе
Exit - Выход
The application can not
run in the current folder. Move it to another folder, for example in
the folder: C:\ - Приложение нельзя
запустить из текущей папки. Переместите
его в другую папку, например в папку:
C:\
Язык:
к языку
требований нет, главное чтоб прога была
портативная и не требовала от ОС что-то
особенное
Примечание:
Отдельно
примеры реализации на Bash и VBScript
16x16. Скорей всего нужна будет иконкак
большего размера для exe-шника. Поэтому
отдельно, во вложении png или cdr иконки.
Последний
релиз программы которая будет запускаться
можно скачать здесь:
http://anime-db.org/download/anime-db_0.3.5.19_Win32.exe
Может понадобится
для отладки
аналога:
Apache монитор,
который висит в трее и позволяет управлять
сервисом апачаРазница только
в том что будет только один уровень
выпадающего меню.
Требования:
- OS Windows XP и
старше - программ
должна быть портативной(работать с
флашки) - это должен
быть скомпелированный exe-шник
нужно на выходе:
- исходники
программы. Они будут выложены в открытый
доступ на GitHub. Можно сразу разрабатывать
ПО там https://github.com/anime-db/monitor - скомпилированная
версия программы (exe файл)
Нужно иметь
возможность менять параметры запуска
приложения без перекомпиляции, поэтому
рядом с файлом exe должен лежать файл
config.ini.
Конфиг:
# IP-address of the
server with application
addr = 0.0.0.0
# Port on the
application server
port = 56780
# Path to php.exe
php = php
addr — адрес
на котором будет запущен сервер.
port — порт
который будет слушаться
php — путь
к php интерпретатору. Тут стоит
пояснить, если интерпретатор установлен
на компьютере пользователя, то в консоли
он доступен напрямую:
> php -i
Но в большинстве
случаев установлен не будет. Для решения
этой проблемы в конечной сборке приложения
присутствует портативная версия
интерпретатора. То есть параметр php
имеет вид:
# Path to php.exe
php =
./bin/php/php.exe
Описание
задачи:
Валидация
пути:
Если в пути
расположения программы присутствуют
символы не входящие в таблицу ASCII, то
приложение не запустится. Соответственно
первым делом, программа после запуска
должна проверить путь на котором она
запущена. Если путь не корректен выдать
пользователю окно вида:
Текст сообщения
об ошибке:
The application can
not run in the current folder. Move it to another folder, for example
in the folder: C:\
Заголовок
сообщения: AnimeDB
После выдачи
сообщения закрыть программу.
Проверка
перемещения:
Далее, если
все хорошо, то нужно проверить перемещалась
ли программа с последнего раза и если
да, то выполнить команду:
php ./app/console
cache:clear --env=prod -no-debug
Эта команда
чистит кэш, он к сожалению привязан к
пути расположения программу
Путь последнего
расположения программы можно хранить
в файле: ./bin/.pwd
Есть пример
реализации в Bash и VBScript
php —
это переменная, значение которой берем
из конфига
Дожидаемся
окончания чистки кэша и переходим к
следующему этапу.
Запуск
процессов:
запускаем в
фоне 2 процесса
php -S 0.0.0.0:56780
-t ./web ./app/router.php >nul 2>&1
php -f ./app/console
animedb:task-scheduler >nul 2>&1
соответственно
также часть параметров берем из конфига
Интерфейс:
После выполнения
всех задач в трее появляется иконка с
программой как и в случае апача.
Щелкая на ней
левой кнопкой, появляется выпадающее
меню с пунктами:
- Start
- Stop
-
Restart
выполняет соответствующие действия
При щелчке
правой кнопкой мыши появляется выпадающее
меню с пунктами:
- About
- Exit
открывает браузер по умолчанию на
адресе:
http://anime-db.org/
Щелчек на Exit
стопает запущенные процессы и выключает
программу
При наведении
на иконку в трее, вылезает подсказка:
AnimeDB
Желательно:
- желательно
что бы при запуске exe-шника открывался
браузер по умолчанию с адресом:
http://localhost:56780 - желательна
поддержка мультиязычности
(перевод пунктов
меню и сообщений об ошибках)
Переводы:
Сейчас нужно
только две локали ru и en (это если
будет делаться мультиязычность).
Start - Старт
Stop - Стоп
Restart - Перезапуск
About - О программе
Exit - Выход
The application can not
run in the current folder. Move it to another folder, for example in
the folder: C:\ - Приложение нельзя
запустить из текущей папки. Переместите
его в другую папку, например в папку:
C:\
Язык:
к языку
требований нет, главное чтоб прога была
портативная и не требовала от ОС что-то
особенное
Примечание:
Отдельно
примеры реализации на Bash и VBScript
- https://raw.github.com/anime-db/anime-db/master/AnimeDB
- https://raw.github.com/anime-db/anime-db/master/AnimeDB_Run.vbs
- https://raw.github.com/anime-db/anime-db/master/AnimeDB_Stop.vbs
16x16. Скорей всего нужна будет иконкак
большего размера для exe-шника. Поэтому
отдельно, во вложении png или cdr иконки.
Последний
релиз программы которая будет запускаться
можно скачать здесь:
http://anime-db.org/download/anime-db_0.3.5.19_Win32.exe
Может понадобится
для отладки
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.