Мелочь всякая

Здесь барахольщики могут похвастать _своими_ творениями в графике, литературе, железе, софте
Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Мелочь всякая

Сообщение arxont »

Сюда предлагаю постить разное, что делали, но для чего нет смысла заводить отдельную тему.

---------------------------------
Несколько лет назад ставили в бороду (а потом и гвоздь) такую систему как SambaPOS и даже перевели 2 версию. И где-то в интернетах описывал сей опыт. А сейчас вышла четвёртая версия в которой русского нет, а ко мне обратились по поводу перевода. И если во второй 2 и 3 версиях мультиязычность была нативной, то здесь её нет и пришлось потыкаться IL=дизассемблером
http://arxont.blogspot.ru/2015/08/sambapos-v4.html
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Написал небольшую болванку для сервиса -
Из коробки - логирование (в том числе на удалённый сервер), отслеживания включений-выключений, инсталлер.

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 Содержит скрипт для создания нужной таблицы, для работы логера
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Диск пару раз соскользнул и решил прифигачить силиконовые ножки. (Ножки снял с микротика) Стал гораздо более устойчиво держаться :lol:
WP_20151115_002.jpg
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Делал с год назад полку для принтера - http://baraholko.ru/viewtopic.php?f=5&t=208#p5657

Сейчас приобрёл сканер и решил проапгрейдить полочку. Исходил из следующих соображений -
1) Сканер нужен "редко, но метко" поэтому он должен быть подключен всегда
2) Места он должен занимать минимально, но тут проблема - для открытия крышки ему нужно достаточно много места
3) Стол маленький - на него не поставишь

В итоге купил за 150 рублей в мебельном две направляющих для мебели и присобачил снизу.
1+2.jpg
Киберпанк не умер. Он просто наступил.

hjv
Сообщения: 317
Зарегистрирован: Ср мар 04, 2015 10:41 pm

Re: Мелочь всякая

Сообщение hjv »

Интересное решение.
R2D2 это не робот, а цепь из схем журнала "Радио" :mrgreen:

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Коротко о том, почему я люблю 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());
Но уже не так красиво )))
Киберпанк не умер. Он просто наступил.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Накидал для одного барахольщега скрипт для ежедневной смены пароля на выфи, для микротика -

http://arxont.blogspot.ru/2018/01/mikrotik.html

PS: Не спрашивайте зачем ему это :mrgreen:
Киберпанк не умер. Он просто наступил.

Tengell
Сообщения: 60
Зарегистрирован: Сб фев 16, 2013 9:48 pm

Re: Мелочь всякая

Сообщение Tengell »

arxont писал(а):Делал с год назад полку для принтера -...
Простейшая индустриальная полочка на балкон, или как я провёл с пользой 23-е февраля :D
IMG_20180223_122355.jpg
IMG_20180223_185420.jpg
IMG_20180223_185402.jpg
3 пластины из ЛДСП с кромкой у знакомых мебельщиков -600 рублей
4 шпильки с гаечками и цепочкой -200 руб.

Аватара пользователя
arxont
Сообщения: 3948
Зарегистрирован: Пт авг 31, 2012 11:29 pm

Re: Мелочь всякая

Сообщение arxont »

Переклеил экран на ыпаде. Пиздец. Ёбань совершенно малоремонтнопригодная - полдня убил на эту всю херню. Общий совет - ставьте защитное стекло. Используйте хороший, мягкий (силикон или кожа) чехол.
34817941_602240106819966_8429514471117946880_n.jpg
Киберпанк не умер. Он просто наступил.

Ответить