Главная

Monday, 27 March 2017

Nyukers Network Suite и его исходный код.

Всем привет.


Времени мало, поэтому по сути. Идя на встречу читателям блога выкладываю весь код моего  швейцарского ножа для администратора - пакета Nyukers Network Suite®.



Напомню что пакет Nyukers Network Suite состоит из семи утилит, которые мне понадобились в процессе изучения локальной сети:

IP Calculator, IP Map Scanner, Audit LAN Scanner, LAN Packet Interceptor, IEHistory Viewer, Windows Firewall Log Viewer, SNMP Reader.

А весь код находится на GitHub  в свободном доступе. Пользуйтесь, совершенствуйте, не забывайте ставить беклинки или просто благодарить автора.

Всем удачи.

Wednesday, 22 March 2017

Кастомизация стандартного приглашения в Windows.


Всем привет.

Заметил я что стандартный фон экрана входа в систему начиная с Windows 7 можно легко поменять. Часто это используют магазины электроники когда явно ставят свою ненавязчивую рекламу себя на продаваемые ноутбуки.

Оказалось это давно не секрет. Например, как поменять это вручную описано здесь.


В принципе все действия сводятся к заготовке файлов картинок под разные разрешения вашего экрана, если вы вдруг его поменяете. И небольшой правке реестра.


Вначале создаем папку для графических заготовок:
mkdir "c:\Windows\System32\oobe\Info"


Затем копируем туда наши картинки
xcopy /Y ".\backgrounds" "c:\Windows\System32\oobe\Info\backgrounds\"


Названия jpg-файлов выглядят так:
background1024x1280.jpg
background1024x768.jpg
background1280x768.jpg
background1280x960.jpg
background1360x768.jpg
background1920x1200.jpg
background768x1280.jpg
background768x1360.jpg
background900x1440.jpg
background960x1280.jpg
backgroundDefault.jpg


Включаем пользовательский фон (OEMBackground=1):
reg add "HKEY_LOCAL_MACHINE\software\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background" /v OEMBackground /t REG_DWORD /d 1 /f


Это все.


Соответственно выключить пользовательский фон (OEMBackground=0):
reg add "HKEY_LOCAL_MACHINE\software\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background" /v OEMBackground /t REG_DWORD /d 0 /f

Обратите внимание, что если вы смените тему оформления Windows, ваш экран приветствия может быть отключен, так как тема включает в себя и настройки этого экрана. Если вы хотите отредактировать оригинальный фон, применяемый в экране приветствия по умолчанию, то найдите файл C:\Windows\System32\oobe\background.bmp и внесите в него нужные изменения.


Изменив фон, как это описано выше, вы можете столкнуться с проблемой низкого контраста текста и кнопочек при выборе светлого фона.

Чтобы изменить кнопки, необходимо в разделе HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI добавить параметр ButtonSetTHna DWORD.
Значения этого параметра варьируются от 0 до 2.
Ниже приведено их описание:
0 - тени текста светлее, темные (более непрозрачные) кнопки, по умолчанию;
1 - тени текста темнее, более светлые (прозрачные) кнопки для светлых фонов;
2 - нет теней текста, непрозрачные кнопки для темных фоновых рисунков.

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

Friday, 17 March 2017

Особенность утилиты Where.

Всем привет.

Есть такая полезная утилита where.exe в Windows 7. Она отображает расположение файлов, совпадающих с шаблоном поиска. По умолчанию поиск выполняется в текущем каталоге и в каталогах, указанных в переменной среды PATH.

Параметры:
    /R       Рекурсивный поиск и отображение файлов, соответствующих указанному шаблону, начиная с указанного каталога.

    /Q       Возврат только кода выхода без отображения списка найденных файлов (тихий режим)

    /F       Отображение найденных файлов в кавычках.

    /T       Отображение размера, даты и времени изменения для всех найденных файлов.

    шаблон  
Шаблон поиска для искомых файлов. В шаблоне можно использовать подстановочные знаки * и ?. Также можно задавать конструкции "$пер:шаблон" и "путь:шаблон", где "пер" представляет переменную среды, и поиск осуществляется по путям, указанным в переменной   среды "пер". Эти конструкции не следует использовать с параметром /R. При поиске к шаблону также добавляются расширения из переменной PATHEXT.

     /?      Вывод справки по использованию.

  Примечание. Эта служебная программа возвращает код ошибки 0, если
              поиск был успешным, 1 - если безуспешным, и
              2, если возникли ошибки.

Примеры:
    WHERE /?
    WHERE имя_файла имя_??????.*
    WHERE $windir:*.*
    WHERE /R c:\windows *.exe *.dll *.bat
    WHERE /Q ??.???
    WHERE "c:\windows;c:\windows\system32:*.dll"
    WHERE /F /T *.dll

А теперь сюрприз: если файл в системе присутствует по PATH, но у пользователя от которого выполняют запуск WHERE нет прав на запись (Write) в папку где находится сам файл, то файл не будет найден. Т.е. файл виден (Read), может быть выполнен (Exec), но WHERE его не найдет. Вот так.)

Увидимся.

Tuesday, 14 March 2017

Python и прокси.

Всем привет.

Вчера возился с прикручиванием Selenium WebDriver-a к PyCharm. Так было надо. Изучаем проект по использованию языка Python для тестирования web-приложений.

Допускаю что с этим у вас не возникает особых проблем тем более что инструкций в интернете полно. Но возникают определенные трудности когда ваш интернет организован через прокси-сервер.

У меня получилось, но не с сразу.  Вариантов через которые  я прошел оказалось три.

Первый совет был создать файлик .gitconfig с таким вот содержанием:

[https]
proxy=https://myproxy.cytinet.com.ua:3128
[http]
proxy=http://myproxy.cytinet.com.ua:3128

И положить его в свой профиль С:\Users\Username.

Вторым советом было использование параметра --proxy в строке запуска менеджера PIP.

Пример:
pip install ipython --proxy=http://username:mypsw@myproxy.cytinet.com.ua:3128

И третьим советом было использование системных переменных:
set https_proxy=username:mypsw@myproxy.cytinet.com.ua:3128
set http_proxy=username:mypsw@myproxy.cytinet.com.ua:3128

Но увы, третий совет мне помог только при переходе от PIP к easy_install.
Пример:
easy_install ipython

PIP ни в какую не хотел использовать мои ухищрения.
Вот и все пока.

Friday, 10 March 2017

Your phrases about Time for everyday.

Hi everybody.

Today I would like to present for you a phrases of timing situation. I'm sure that it will be very useful for your English conversation. Please, see it below:

a while back / a while ago некоторое время назад, раньше
about time пора, самое время
after a while через некоторое время
ahead of time заранее
all along все время
all day long целый день
all the same без разницы, все равно
all the while все это время
any day (now) когда угодно
at a moment's notice немедленно, сию же минуту
at a time в то время, когда
at all times все время, всегда
at last / at long last наконец
at one time одно время
at that point в этот момент
at the moment в нужный момент
at the point of в момент чего-либо
at the same time в то же время
at the worst possible time в самое неподходящее время
at times иногда
day after day / day by day / from day to day день за днем
day in, day out целыми днями
every now and then время от времени, периодически
every so often / once in a while/ every now and again время от времени, периодически
for the moment/ for the present что касается настоящего момента
from now on отныне и впредь
from the ground up с самого начала
from this day forward отныне и впредь
from time to time время от времени
from way back с давних пор
hard times трудные времена
have all the time in the world иметь уйму времени
high time самое время
his days are numbered его дни сочтены
hurry up! поторапливайся
it's wastle of time это пустая трата времени
in his day в свое время
in no time мигом, с минуты на минуту
in old days в былые времена
in the meantime тем временем
in time/just in time вовремя / как раз вовремя
it's a matter of time вопрос времени
just about почти уже
just now как раз сейчас
make haste спешить
make time спешить
more often than not чаще всего
on and off время от времени, с перерывами
on and on непрерывно, снова и снова
on the spot на месте, без промедления
on time точно в назначенное время
once and for all раз и навсегда
once in a while изредка
out of date устаревший
play for time тянуть время
right away прямо сейчас
round the clock круглые сутки
run out of time не успевать
set the pace задавать темп
so far / as yet до сих пор
sooner or later рано или поздно
take time занимать время
take your time! не спеши!
till the end of time до скончания веков
time after time / time and again раз за разом, регулярно
time is up время вышло
time out перерыв
time will tell время покажет
time's getting short у нас мало времени
that's not the point это не относится к вопросу
the whole year round / all year round круглый год
there is no hurry спешить некуда

Wednesday, 8 March 2017

HTTP и FTP ошибки web-сервера.


Всем привет.

Часто приходится получать ошибки при загрузке страниц при просмотре web-сайтов. С различными кодами. Мне иногда интересны причины случившегося. Поэтому полезно иметь под рукой справочник кодов ошибок http и ftp. Ниже привожу свой справочник с толкованием каждой ошибки.
Он вам, возможно, пригодится при переводе сайта на https.


HTTP ошибки web-сервера делятся на диапазоны:

100-199 Информационный. Сообщает агенту что, запрос агента принят и обрабатывается.
200-299 Запрос агента обработан успешно, сервер отправил клиенту запрашиваемый документ .
300-399 Запрос агента изменен и агенту нужно предпринять некоторые действия для удовлетворения измененного запроса.
400-499 Проблемы при попытке выполнить запрос.
500-599 Ошибки сервера.

В диапазоне определены лишь несколько кодов, хотя для сервера при необходимости могут определяться собственные коды. При получении кода, который не может распознать, агент интерпретирует его в соответствии с диапазоном, к которому этот код принадлежит. Коды в диапазонах 100-199, 200-299 и 300-399 большинство Web-браузеров обрабатывают без извещения пользователя, а некоторые коды ошибок из диапазонов 400-499, 500-599 отображаются для пользователя.

Код ошибки http сервера - ошибка 100 Continue
Начальная часть запроса принята, и клиент может продолжать передачу запроса.

Код ошибки http сервера - ошибка 101 Switching Protocols
Сервер выполняет требование клиента и переключает протоколы в соответствии с указанием, данным в поле заголовка Upgrade.

Код ошибки http сервера - ошибка 200 OK
Запрос клиента обработан успешно и ответ сервера содержит затребованные данные.

Код ошибки http сервера - ошибка 201 Created
Этот код состояния используется в случае создания нового URI. Вместе с этим кодом результата сервер выдает заголовок Location, который содержит информацию о том, куда были помещены новые данные.

Код ошибки http сервера - ошибка 202 Accepted
Запрос принят, но обрабатывается не сразу. В теле содержимого ответа сервера может быть дана дополнительная информация о данной транзакции. Гарантии того, что сервер в конечном итоге удовлетворит запрос, нет, даже несмотря на то, что на момент приема запрос выглядел допустимым.

Saturday, 4 March 2017

The best Symantec Diagnostic Tools.

Hello guys.

Today I deal with reinstallation new version of Symantec Endpoint Protection. It's good antivirus. However I had some problems (failed process or no access to registry) with installation under old OS or hardware. As always I have to take necessary tools for diagnostic these problems. 

What is it?
There are the following.

The main utility is Symantec Diagnostic Tool (SymDiag).

The SymDiag is a multi-product, multi-language diagnostic and security analysis utility.  SymDiag is designed to provide self-help support for Symantec product technical issues, zero day threat analysis, best practice recommendations and proactive services to customers. If further assistance is needed, SymDiag lowers customer effort and increases support efficiency by providing automated data gathering and support case submission.


This utility has keys for command line launch. I often used in my situation the key "-noup".

Thursday, 2 March 2017

Простой суфлер из PowerPoint.

Всем привет.

Часто ли вам приходится выступать перед аудиторией? Я имею в виду когда вы должны просто говорить и держать аудиторию под контролем? Или когда вам надо выступить перед камерой без экспромта? Например записать ваше первое видео-резюме. Говорят что такой тип резюме входит в моду.

Существуют программы-суфлеры или онлайн web-сервисы. 

Но фокус в том, что в качестве суфлера мы можем использовать всем известный PowerPoint. И действительно, в PowerPoint можно за пару минут сделать презентацию которая и будет выполнять функцию суфлера. Идея не нова и ее реализация найдена здесь http://shperk.ru/uroki/powerpoint/powerpoint-vash-besplatnyj-sufler.html

Одно но - скорее всего автор выполнил технический перевод из другого источника и в результате суфлер в PowerPoint оказался ограниченным.


Сама идея очень проста — создать пустой черный слайд, на который поместить текстовый блок с текстом речи. Далее добавить анимацию текста — путь перемещения снизу вверх, на забыв установить скорость анимации. Все! Теперь просто ставите ноутбук или экран перед собой на трибуне, и начинаете говорить, а текст речи постепенно проплывает перед вами на экране снизу вверх, куда вы поглядываете краем глаза. Прямо как в телестудии.)





Теперь про ограничение. Вы можете запихнуть в один слайд весь свой доклад. Но количество текста которое будет при этом проиграно на экране зависит только от размера шрифта, а от времени проигрывания анимации не зависит. На видео выше в первом слайде выбран шрифт размером Calibri 24 пункта, а на втором 48 пунктов. Время анимации одинаковое. На втором лучше видно, но там и строк в два раза меньше.

Поэтому лучше весь текст рассовать по другим таким же слайдам равномерно ориентируясь на размер шрифта с которым в будете работать. Во всех слайдах вы используете тот же эффект анимации "Lines". И настраиваете между слайдами быстрый, с минимальной задержкой, авто-переход.


Переход от кадра к кадру настраивается в панельке "Transitions" на слайде который предшествует тому на который нужен переход. Т.е. это действие по принципу "ВЫПОЛНЮ ПОСЛЕ СЕБЯ". Не забывайте это момент.

В моем случае из двух кадров такие настройки выполняются на 1-м слайде. Клик (On Mouse Click) убиваем, а задержку (After:) ставим минимальную, советуют поставить 1-у сотую секунды, но у меня сработало и на нулевом значении.


Успехов.