Selenium под Windows: все с начала

Автор: admin от 23-05-2017, 13:25, посмотрело: 50

Представляю вам перевод моей статьи на Medium.com.


Впервые выпущенная более 30 лет назад Microsoft Windows сегодня является неоспоримым лидером среди настольных операционных систем. Это просто нельзя игнорировать при разработке веб-приложений. В этой статье я хотел бы обсудить некоторые особенности использования Selenium под Windows и предложить простое и проверенное в боевых условиях решение, значительно упрощающее жизнь.
Selenium под Windows: все с начала

Категория: Программирование, Windows

 

Баг в NTFS, или как подвесить всю систему

Автор: admin от 22-05-2017, 11:30, посмотрело: 22

Не так давно при разработке фильтра файловых систем возникла проблема, которая приводила к подвисанию всей системы. Казалось бы, фильтр выполнял очень простые действия и сам был очень примитивным. Чтобы выяснить причину, пришлось спуститься до отладки и реверс-инжиниринга драйвера NTFS. Анализ выявил очень интересный эффект. Если скомпилировать и выполнить очень простую программу, изображенную на рисунке ниже, то доступ к соответствующему тому подвиснет.

Баг в NTFS, или как подвесить всю систему


Т.е. в данном примере, если попытаться открыть любой файл относительно файла $mft, доступ ко всему тому «С» повиснет, а так как этот том является системным, подвиснет и вся система. При этом не нужно иметь каких-либо прав. Если же том был не системным, то повиснет только доступ к этому тому, но если выполнить перезагрузку, то система повиснет на ней.

Категория: Программирование, Системное администрирование, Информационная безопасность, Windows

 

Релиз кросс-платформенного XAML UI-фреймворка AvaloniaUI 0.5

Автор: admin от 15-05-2017, 14:20, посмотрело: 17

Состоялся релиз версии 0.5 кросслплатформенного XAML UI фреймворка AvaloniaUI (раннее назывался Perspex). Фреймворк сделан по тем же принципам, что и WPF/UWP, т. е. используется XAML, биндинги и шаблонизированные элементы управления. На текущий момент это единственный способ сделать UI на настоящем XAML, который будет работать на Windows, OS X и Linux (так же имеется экспериментальная поддержка iOS и Android).


Релиз кросс-платформенного XAML UI-фреймворка AvaloniaUI 0.5


Каталог встроенных контролов (gif 3MB)


Начать работать с фреймворком можно скачав дополнение для Visual Studio 2017 и создав проект из шаблона. Так же стоит ознакомиться с документацией на wiki.


В этом релизе: Поддержка .NET Core, переход на GTK3 для *nix-систем, поддержка вывода через Linux fbdev, система расширений, исправлено множество ошибок.

Категория: Программирование, Android, Windows, Linux, iOS

 

Восстание машин: Как роботы захватили бухгалтерию

Автор: admin от 28-04-2017, 13:25, посмотрело: 32

Кнопочные войны в самом разгаре, роботы продолжают наступать, машины обучаются в разы быстрее людей, а вот Андрей, владелец одной московской кофейни, становится всё больше счастлив… В этот пятничный предпраздничный день мы решили поделиться с вами историей Кнопки, которая в прошлом году создала 42 робота для спасения бухагелтеров от рутинной работы, а сейчас занимается разитием искусственного бухгалтерского интеллекта.

Восстание машин: Как роботы захватили бухгалтерию

Категория: Программирование, Microsoft, Windows

 

Исключения в Windows x64. Как это работает. Часть 4

Автор: admin от 20-04-2017, 00:20, посмотрело: 69

Опираясь на материал, описанный в первой, второй и третьей частях данной статьи, мы продолжим обсуждение темы обработки исключений в Windows x64.

Описываемый материал требует знания базовых понятий, таких, как пролог, эпилог, кадр функции и понимания базовых процессов, таких, как действия пролога и эпилога, передача параметров функции и возврат результата функции. Если читатель не знаком с вышеперечисленным, то перед прочтением рекомендуется ознакомиться с материалом из первой части данной статьи. Если читатель не знаком со структурами PE образа, которые задействуются в процессе обработки исключения, тогда перед прочтением рекомендуется ознакомиться с материалом из второй части данной статьи. Также, если читатель не знаком с процессом поиска и вызова обработчиков исключений, рекомендуется ознакомиться с третьей частью данной статьи.

Категория: Программирование, Системное администрирование, Windows

 

Как сделать свой С++ код кроссплатформенным?

Автор: admin от 19-04-2017, 18:35, посмотрело: 71

Возможно, кто-то, прочитав заголовок, спросит: «Зачем что-то делать со своим кодом?! Ведь С++ кроссплатформенный язык!». В целом, это так… но только пока нигде нет завязок на специфичные возможности компилятора и целевой платформы…

В реальной жизни разработчики, решающие конкретную задачу под конкретную платформу, редко задаются вопросом «А точно ли это соответствует Стандарту С++? А вдруг это расширение моего компилятора». Они пишут код, запускают сборку и чинят места, на которые выругался их компилятор.

В итоге получаем приложение, которое, в некоторой степени, «заточено» под конкретный компилятор (и даже под его конкретную версию!) и целевую ОС. Более того, из-за скудности стандартной библиотеки С++ некоторые вещи просто невозможно написать, не воспользовавшись специфичным API системы.

Так было и у нас в Тензоре. Мы писали на MS Visual Studio 2010. Наши продукты были 32-х битными Windows-приложениями. И, само собой, код был пронизан всевозможными завязками на технологии от Microsoft. Однажды мы решили, что пора осваивать новые горизонты: пора научить СБИС работать под Linux и другими ОС, пора попробовать перейти на другое «железо» (POWER).

В данном цикле статей я расскажу, как мы сделали свои продукты настоящими кроссплатформенными приложениями; как заставили их работать на Linux, MacOS и даже под iOS и Android; как запустили свои приложения на множестве аппаратных архитектур (x86-64, POWER, ARM и другие); как научили работать на big-endian машинах.
Как сделать свой С++ код кроссплатформенным?

Категория: Программирование, Веб-разработка, Windows, Linux

 

K-Meleon 76 Pro — новая русская сборка браузера для олдфагов и истинных ценителей

Автор: admin от 16-04-2017, 23:40, посмотрело: 93

И снова здравствуйте!

Безумно много времени прошло с момента нашей последней публикации, приуроченной к возрождению российской Pro-сборки K-meleon.
Конечно, многие воспримут наши новости с иронией и неизбежными ухмылками.

Увы, разработка K-Meleon'a стагнировала по ряду объективных причин, главная из которых — зависимость от единственного разработчика. У нашего «отца-разработчика» Дориана случилось подряд несколько проблем, что самым негативным образом повлияло на разработку, вкупе с бурными революциями в коде движка Мозилла, о которых сообщество уже давно отбурлило и теперь продолжает лишь тихо подвывать.

Тем не менее, нельзя сказать, что разработка встала совсем — наша сборка основана на коде, выпущенном в декабре 2016 года. Правда, это по-прежнему релиз-кандидат 76-й версии, основанной на Gecko 38 ESR, так что браузер заведомо перешел в разряд олдфагового инструментария, актуального для обладателей устаревшего и слабого оборудования.

Нет, он по-прежнему прекрасно работает и на современном оборудовании, но модерн-вебдизайн стремительным домкратом обрушивает на нас все новые и новые фишки популярных сайтов (часто написанные вопреки всем веб-стандартам), которые разработчикам браузеров просто ПРИХОДИТСЯ поддерживать. Ибо куда им (даже таким как Google) бодаться с тем же фейсбуком — себе дороже. Проше вставить в код костыль.

Тем не менее 76-я версия нашего браузера — это вполне рабочая лошадь, осиливающая подавляющее большинство сайтов. А кое-где уже и мы подставляем свои костыли.

Категория: Веб-разработка, Windows

 

Извлечение аудиоданных из wav-файла на UWP

Автор: admin от 6-04-2017, 17:25, посмотрело: 42

Сегодня мы представляем материал от наших давних партнеров, компании Music Paradise, которые, как вы помните, уже делились с Хабром секретами создания музыкальных приложений в нашей совместной статье «Внедрение социальных сервисов в неигровое приложение». На этот раз специалисты из команды расскажут о специфике реализации базовых функций утилиты Audio Editor, изначально написанной для iOS и Mac устройств, на новой платформе — Windows — и о том методе, который они применяли при адаптации.

Извлечение аудиоданных из wav-файла на UWP


«В этой статье мы рассмотрим один из самых доступных способов получения аудиоданных из файла. Извлечение аудиоданных является краеугольным камнем для всех разработчиков, которые делают первые шаги в работе со звуком, однако внимания ей уделяется на удивление мало. Проблема ощущается особенно остро при попытках найти готовые решения или инструкции для UWP в интернете: в большинстве случаев ответа не получаешь вообще или же приходится довольствоваться устаревшими решениями. Между тем, при работе со звуком извлечение данных имеет значимый смысл, давая разработчику возможность редактировать данные: копировать, добавлять, изменять, путем наложения эффектов, визуализировать их на экране пользователя. Именно о визуализации сегодня и пойдет речь. Несмотря на существование специальных библиотек для работы с аудиоданными в галерее NuGet, мы построим логику приложения на самостоятельной обработке байтов аудиофайла. Таким образом, в процессе мы узнаем больше о структуре wav-файла и убедимся на практике, что работа с аудио данными — это не так уж сложно.

Категория: Веб-разработка, Windows

 

Жизнь без SDL. Зима 2017

Автор: admin от 5-04-2017, 22:40, посмотрело: 62

Жизнь без SDL. Зима 2017

Введение, дисклеймер или зачем эта статья


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

Первая попытка формирования проблемы была представлена на финальном этапе M*CTF в Конгресс-центре МТУСИ. В день лекций был представлен к вниманию доклад «Жизнь без SDL. Осень-2016», затрагивающий подробный разбор DOM XSS на WIX.COM и Cryptsetup Initrd root Shell в современных дистрибутивах. Последний случай мы рассмотрели на недавнем вебинаре.

Доклад получил одобрение публики и плавно перешел в диалог о существующих проблемах и способах их решений. Это вдохновило нас на создание цикла статей о наиболее интересных и показательных случаях, подчеркивающих актуальность затронутой темы.

Категория: Программирование, Веб-разработка, Информационная безопасность, Windows, Linux

 

Почему я отказался от нескольких мониторов

Автор: admin от 5-04-2017, 10:45, посмотрело: 109

Да здравствует единственный монитор


Почему я отказался от нескольких мониторов

Нужен всего один монитор с высоким DPI — и зачастую для специалистов в сфере ИТ это действительно лучше, чем несколько мониторов.

Многие разработчики считают, что использование нескольких мониторов повышает производительность — ведь это подтверждается исследованиями, да? Только следует иметь в виду, что многие исследования проводились производителями мониторов — компаниями Dell, NEC и другими.

Безусловно, если поставить на рабочем месте несколько мониторов, окружающие будут думать, что вы тот еще хакер… но пару лет назад я все же продал свои мониторы и оставил один. Оказывается, в этом я не одинок.

И сейчас я расскажу, почему.

Переведено в Alconost

Категория: Операционные системы » Windows

 
Назад Вперед