Мелочь всякая
Мелочь всякая
Сюда предлагаю постить разное, что делали, но для чего нет смысла заводить отдельную тему.
---------------------------------
Несколько лет назад ставили в бороду (а потом и гвоздь) такую систему как SambaPOS и даже перевели 2 версию. И где-то в интернетах описывал сей опыт. А сейчас вышла четвёртая версия в которой русского нет, а ко мне обратились по поводу перевода. И если во второй 2 и 3 версиях мультиязычность была нативной, то здесь её нет и пришлось потыкаться IL=дизассемблером
http://arxont.blogspot.ru/2015/08/sambapos-v4.html
---------------------------------
Несколько лет назад ставили в бороду (а потом и гвоздь) такую систему как SambaPOS и даже перевели 2 версию. И где-то в интернетах описывал сей опыт. А сейчас вышла четвёртая версия в которой русского нет, а ко мне обратились по поводу перевода. И если во второй 2 и 3 версиях мультиязычность была нативной, то здесь её нет и пришлось потыкаться IL=дизассемблером
http://arxont.blogspot.ru/2015/08/sambapos-v4.html
Киберпанк не умер. Он просто наступил.
Re: Мелочь всякая
Написал небольшую болванку для сервиса -
Из коробки - логирование (в том числе на удалённый сервер), отслеживания включений-выключений, инсталлер.
https://github.com/psionika/logOnOffService
Из коробки - логирование (в том числе на удалённый сервер), отслеживания включений-выключений, инсталлер.
https://github.com/psionika/logOnOffService
Болванка для создания сервисов. Уже содержит инсталятор и систему логирования. Основные функции:
запускается при запуске системы и висит в памяти до окончания работы -
Считывает - Имя ПК, Дату и время включения, Внешний IP, учетную запись
Отправляет эти данные на сервер MySQL
Имеет инсталятор который используется для установки сервиса, в том числе в чистую систему (без Net Framework`a)
Отслеживаются следующие события
Отправка на сервер MySQL при включении
Отправка на сервер MySQL при выключении
Отправка на сервер MySQL при блокировке-разблокировке компьютера (Win-L к примеру или просто по таймингу)
Отправка на сервер MySQL при уходе в спящий режим и выходе из него.
Отправка на сервер MySQL при входе пользователя в систему и выходе из него.
Всего возможно 9 состояний -
Start computer - компьютер включился (вполне возможно в поле пользователь будет -No users- так как включённый компьютер не значит, что пользователь зашел и начал работу
Shutdown - выключение компьютера
Logon - пользователь вошел в систему
Logoff - пользователь вышел из системы
Lock - компьютер был заблокирован (либо вручную через Win-L, либо по времени простоя)
Unlock - компьютер был разблокирован (пользователь ввёл пароль)
Close manual - сервис был остановлен вручную
Suspend - компьютер вошел в спящий режим
Resume - компьютер вышел из спящего режима
Сервис разрабатывался в Visual Studio 2015 Community Edition. Дополнительные библиотеки - NLog (логирование). MySQL ,Net connector - для отправки данных на сервер MySQL. Для получения публичного адреса используется запрос к серверу http://yandex.ru/internet поэтому нужно, чтобы компьютер имел к нему доступ.
Инсталлятор сделан с помощью Inno Setup.
(установщик требует прав администратора)
(При установке если на компьютере не установлен Net Framework 4 Client Profile (к примеру выключены обновления или только что установленная система), то инсталлер автоматически скачивает и устанавливает его с сайта Microsoft.)
(Ставится в папку Application Data для всех пользователей - по умолчанию Если windows 8-10 C:\Users\All Users\Обновление\ Если 7 C:\ProgramData\Обновление Если XP C:\Documents and Settings\All Users\Application Data\Обновление)
(по умолчанию в файле settings.xml прописаны тестовые данные, чтобы были рабочие нужно пересоздать дистрибутив, или каждый раз переписывать)
Файл settings.xml (в одной папке с программой) Прописывается 4 параметра - вместо INPUTHERE РЕКОМЕНДУЮ ЭТИ ПАРАМЕТРЫ СДЕЛАТЬ ЗАРАНЕЕ И ПЕРЕСОЗДАТЬ ДИСТРИБУТИВ ЧЕРЕЗ InnoSetup
Время работы Две функции – checkTIme.On() и checkTime.Off. При выполнении отправки информации в БД, проверяется текущее время и если не соответствует, то на сервер информация не отправляется (но в локальный лог пишется, что текущее время не проверяется)
Папка SQL Содержит скрипт для создания нужной таблицы, для работы логера
Киберпанк не умер. Он просто наступил.
Re: Мелочь всякая
Диск пару раз соскользнул и решил прифигачить силиконовые ножки. (Ножки снял с микротика) Стал гораздо более устойчиво держаться
Киберпанк не умер. Он просто наступил.
Re: Мелочь всякая
Делал с год назад полку для принтера - http://baraholko.ru/viewtopic.php?f=5&t=208#p5657
Сейчас приобрёл сканер и решил проапгрейдить полочку. Исходил из следующих соображений -
1) Сканер нужен "редко, но метко" поэтому он должен быть подключен всегда
2) Места он должен занимать минимально, но тут проблема - для открытия крышки ему нужно достаточно много места
3) Стол маленький - на него не поставишь
В итоге купил за 150 рублей в мебельном две направляющих для мебели и присобачил снизу.
Сейчас приобрёл сканер и решил проапгрейдить полочку. Исходил из следующих соображений -
1) Сканер нужен "редко, но метко" поэтому он должен быть подключен всегда
2) Места он должен занимать минимально, но тут проблема - для открытия крышки ему нужно достаточно много места
3) Стол маленький - на него не поставишь
В итоге купил за 150 рублей в мебельном две направляющих для мебели и присобачил снизу.
Киберпанк не умер. Он просто наступил.
Re: Мелочь всякая
Коротко о том, почему я люблю C#
Задача - запускать раз в день и удалять папки старше двух недель. Решается в три строчки.
Можно и в одну -
Но уже не так красиво )))
Задача - запускать раз в день и удалять папки старше двух недель. Решается в три строчки.
Код: Выделить всё
private void DeleteOldFolder(List<BackupDirectoryInfo> dirs)
{
var orderedList = dirs.OrderByDescending(x => x.CreatedTime)
.Take(15);
var dirToDelete = dirs.Except(orderedList).ToList();
dirToDelete.ForEach(x => x.Delete());
}
Код: Выделить всё
dirs.Except(dirs.OrderByDescending(dir => dir.CreatedTime).Take(15)).ToList().ForEach(dir => dir.Delete());
Киберпанк не умер. Он просто наступил.
Re: Мелочь всякая
Накидал для одного барахольщега скрипт для ежедневной смены пароля на выфи, для микротика -
http://arxont.blogspot.ru/2018/01/mikrotik.html
PS: Не спрашивайте зачем ему это
http://arxont.blogspot.ru/2018/01/mikrotik.html
PS: Не спрашивайте зачем ему это
Киберпанк не умер. Он просто наступил.
Re: Мелочь всякая
Простейшая индустриальная полочка на балкон, или как я провёл с пользой 23-е февраля 3 пластины из ЛДСП с кромкой у знакомых мебельщиков -600 рублейarxont писал(а):Делал с год назад полку для принтера -...
4 шпильки с гаечками и цепочкой -200 руб.
Re: Мелочь всякая
Переклеил экран на ыпаде. Пиздец. Ёбань совершенно малоремонтнопригодная - полдня убил на эту всю херню. Общий совет - ставьте защитное стекло. Используйте хороший, мягкий (силикон или кожа) чехол.
Киберпанк не умер. Он просто наступил.