BTCEMon
$$$
До Н.Г.
ВЕРСИЯ ДЛЯ СЛАБОВИДЯЩИХ

BTCEMon

Опубликовано: 08-06-2014 00:57 Автор: MBTY Теги: BTC, Мои разработки
Дописал таки монитор курса криптовалют с BTC-e.com. Приложение по таймеру обращается к API сайта по ссылке https://btc-e.com/api/2/XXX_YYY/ticker, где XXX_YYY - пара, которая присутствует на BTC-e.com, затем отображает полученные данные в удобном виде.
У приложения имеется несколько настроек и пара неочевидных функций. О них подробнее под катом.
У приложения есть МЕНЮ, которое вызывается нажатием правой кнопкой мыши на окошке:
Свернуть
Свернуть в трей - В трее появится значок, нажав на котором правой кнопкой, мы получаем меню: Развернуть, О программе, Закрыть
Поверх всех окон - Первое нажатие активирует эту функцию, Второе - деактивирует.
О программе - Откроется эта страница
Закрыть
В ini файле приложения имеются следующие Настройки:
[Opt]
Timer=5 - интервал в секундах, через который BTCEMon будет запрашивать данные с BTC-e. Меньше 2 секунд выставлять смысла нет - не рекомендует администрация сайта, а потому первая неочевидная фишка. При установке значения меньше 2 или указании не числового значения, BTCEMon заменит значение таймера на "2"
Top=0 и Left=0 - координаты расположения окна на экране в пикселях. Отступ от верха (Top) и от левого края (Left) - если значения = 0, то окошко будет в левом верхнем углу экрана. Координаты запоминаются автоматически. Тут тоже плюшка. Если значения выше, чем разрешение вашего экрана, то координаты будут сброшены на 0. Такое может случиться, если вы сначала запустили BTCEMon на большом экране (скажем 1920х1080), поместили его в правый угол экрана, а потом перенесли его вместе с настройками на ПК с экраном поменьше (1366х768) - приложение отображалось бы вне монитора, а потому реализован сброс.
Popup=1 - Переключатель статуса "Поверх всех окон" у приложения. Можно менять в файле настроек, можно через меню.
min=300 и max=1000 - Активация звукового сигнала при пересечении минимального и максимального порога цены. Т.е. если BTC будет стоить меньше 300$ или выше 1000$ - будет подаваться сигнал, каждый раз, когда BTCEMon будет получать курс. (Если проще каждые 5 секунд в нашем случае). Чтобы сигнал не мешал - ставьте min=0, а max=9999999999
curr=btc_usd - Тут указывается пара, которая и будет отображаться. Например: btc_rur, ltc_usd и так далее.
Taskbar=1 - Активация и деактивация отображения приложения в панели задач. Туда же дублируется курс валюты. При 1 удобно, не видя приложения, всегда видеть курс. При 0 BTCEMon превращается в подобие виджета для рабочего стола.
Еще одна неочевидность: Файл настроек берется по имени файла приложения. Если у нас btcemon.exe, то будет искаться btcemon.ini, если btc.exe, то btc.ini. Удобно это тем, что в одной папке можно хранить несколько копий приложения с разными настройками и для разных валютных пар.
Немного по интерфейсу:
"Цена последней сделки" краснеет, если последняя сделка являлась продажей (Sell) и зеленеет, если была покупка (Buy). То есть это не показатель падения или роста цены.
"Средняя цена за день" будет красной, если она ниже цены последней сделки. Если средняя цена выше текущей, то она будет зеленой. Это уже показатель роста цены за день. При красном значении видим дневной рост, при зеленом - спад.
При достижении порогов цен min и max в правом верхнем углу окна отобразится надпись "MIN Alert!!" или "MAX Alert!".
Вирусов в приложении нет, но в оргиниальном несжатом виде, Virustotal отображает 1 вирус.
Чтобы убедиться, что вируса нет, мне пришла в голову идея перепаковать приложение во все поплуярные паккеры, потому что считаю, что ложное срабатывание появилось из-за компилятора или какой то части кода приложения, которая есть всегда. (Почти все мои приложения получают это ложно срабатывание). Обычно перепакованные приложения дают еще больше ложных срабатываний, но мне важно исключить ошибвку антивируса Ikarus, которая есть в несжатом файле.
И вот BTCEMon был перепакован с помощью: petite, ASPack, PECompact, UPX и mpress
Вот отчесты Virustotal:
MPRESS - 15 ложных - Ikarus смолчал
PECompact - 9 ложных- Ikarus смолчал
UPX - 8 ложных - Ikarus смолчал
Petite - 7 ложных, Ikarus смолчал
ASPack - 0 ложных - лучший результат
Выкладываю файл, сжатый при помощи ASPack
Скачать


◘▲▼▲◘◘▲▼▲◘◘▲▼▲◘