Как стать автором
Поиск
Написать публикацию
Обновить
100.51

Windows *

Разработка под операционные системы от Microsoft

Сначала показывать
Порог рейтинга
Уровень сложности

Как я писал «Вирус-бякус» на Delphi (шутка родом из конца 90-х)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.8K

Началось всё в самом конце 90-х годов, когда мне в руки попал диск с пиратской копией Delphi какой-торанней версии и на глаза попалась статья из Delphi World про управление лотком CD‑ROM'а. «Блин, да это же идея для вируса!», — подумал я...

Читать далее

Разработка служб для Windows на C++

Уровень сложностиСложный
Время на прочтение48 мин
Количество просмотров13K

В данной статье описан пошаговый процесс разработки служб для операционной системы Windows с использованием языка программирования C++.

В статье будет представлена теоретическая база по работе служб в Windows, рассмотрено их общее устройство и будет реализовано приложение, с помощью которого можно будет устанавливать свою службу, запускать её, останавливать и удалять (деинсталлировать).

Читать далее

Файловая система без фокусов: как hard links и XOR сэкономят ваши гигабайты

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров7.6K

Для начала нужно понять главное - файлов не существует.
А потом на примере простых манипуляций разобрать что такое hard links, чем может быть полезен непонятный XOR и как это всё уживается в системах копирования и снимков

Читать далее

Как сделать React Server Components в Electron с помощью Next.js и без открытых портов

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров1.5K

Статья про то как заставить работать React Server Components внутри Electron приложения с помощью Next.js при этом не запуская локальный сервер и не открывая порты. С возможностью публикации стандартными инструментами. А также исследование зачем все это надо.

Читать далее

WorkStarter: утилита для автоматизации запуска программ при старте Windows

Время на прочтение2 мин
Количество просмотров5.1K

Привет, Хабр! 👋 Хочу поделиться небольшим проектом, который я разработал для решения личной задачи. Возможно, кому-то он тоже пригодится.

Что это такое?

WorkStarter - это простая утилита для Windows, которая позволяет автоматически запускать программы и открывать веб-сайты при старте компьютера. Основная идея заключается в том, чтобы упростить процесс подготовки рабочего окружения после включения ПК.

Основные возможности
- 🖥️ Автоматический запуск программ
- 🌐 Открытие веб-сайтов
- ⏱️ Настройка задержки для каждой задачи
- 🎨 Графический интерфейс для управления задачами
- 🔧 Хранение конфигурации в JSON-формате

Как это работает?

WorkStarter состоит из двух основных компонентов:

1. WorkStarter Configuration - графический интерфейс для настройки задач.
2. WorkStarterAgent - фоновый процесс, который запускается при старте системы и выполняет настроенные задачи.

Конфигурация хранится в файле config.json в пользовательской директории приложения.

Технические детали

Проект написан на Python с использованием следующих библиотек:
- PyQt6 для создания графического интерфейса
- asyncio для асинхронного выполнения задач
- appdirs для управления директориями приложения

Установка и использование

1. ⬇️ Скачайте последнюю версию WorkStarter
2. Запустите установщик и следуйте инструкциям
3. После установки запустите "WorkStarter Configuration" из меню "Пуск"
4. Добавьте нужные задачи через графический интерфейс
5. WorkStarterAgent будет автоматически запускаться при старте системы

Ограничения и планы на будущее

На данный момент утилита работает только на Windows и имеет ограниченный функционал. В будущем планируется:

Читать далее

Настройка VSCode для разработки в Tauri

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.9K

Как настроить VSCode для удобной работы с проектом Tauri. Установим пару плагинов и настроим launch.json и tasks.json.

Настроить

Как устроены серийники для Windows, и как восстановить стёршийся COA

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров27K

Эта история начинается с того, что я попытался переустановить Windows на ноутбуке, доставшемся мне вот с такой наклейкой Certificate of Authenticity (COA): часть символов серийника видны хорошо, остальные – в большей или меньшей степени угадываются; но несколько попыток ввести серийник «на глаз» успехом не увенчались. Пришлось углубляться в вопрос подробнее.

Читать далее

Ретрансляция Kerberos. Как работает RemoteKrbRelay

Уровень сложностиСложный
Время на прочтение24 мин
Количество просмотров8.2K

В Windows Active Directory существует протокол Kerberos, который считается безопасным и неуязвимым к Relay-атакам. Или всё-таки...? В статье автор погрузился в глубины аутентификации Windows, DCOM и рассказал об инструменте RemoteKrbRelay.

Изучить

Почему слишком быстрые мыши могут ломать FPS в играх

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров23K

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

По началу может показаться, что работать с мышью и клавиатурой проще всего, но на самом деле это не так; по крайней мере, когда мы говорим о Windows. Множество очень популярных AAA-игр было выпущено с серьёзными проблемами ввода с мышами верхнего ценового диапазона, и в некоторых популярных движках по-прежнему существует эта проблема.

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

Читать далее

Выводы из глобального сбоя CrowdStrike

Время на прочтение3 мин
Количество просмотров3.8K
Как известно, 19 июля 2024 года произошёл серьёзный инцидент с апдейтом программного обеспечения CrowdStrike Falcon для защиты компьютеров (отчёт Microsoft, отчёт CrowdStrike). Обновление конфигурации вызвало ошибку безопасности чтения из границ памяти в ELAM-драйвере CSagent.sys. Поскольку тот работает на уровне ядра Windows, то миллионы ПК ушли в BSOD.

Количество пострадавших официально оценили в 8,5 млн:



Microsoft поясняет, что здесь количество полученных отчётов. Реально пострадавших гораздо больше. Серьёзно пострадали банки и авиакомпании. В частности, Delta. Общий ущерб для мировой экономики от бага страховщики оценили в $5,4 млрд.

В чём же главная проблема и «защитного софта» с драйверами ядра Windows?
Читать дальше →

Поиск открытых сетевых ресурсов и их права доступа

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров6K

Общие сетевые ресурсы в домене Active Directory используются для упрощения и централизации доступа к файлам, папкам, принтерам и другим ресурсам в корпоративной сети. Это может привести к нарушению одной из основ информационной безопасности – конфиденциальности

Читать далее

Ему не место на помойке: хакаем 15-летний электронный переводчик и пишем под него приложения

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров14K

Дисклеймер: статья очень подробная и во всех красках ‭‭«простым языком‭» описывает процесс хакинга и программирования под такой необычный девайс. Так что даже если вас не интересуют электронные переводчики и минипк, статья может оказаться для вас занимательной!

Я всегда любил находить новые применения стареньким девайсам, даже если обход защиты и разработка для них чего-то полезного занимала у меня некоторое время. И если с прошлыми моими статьями, где я привносил новую жизнь смартфонам на Android 2.3, а затем и на Android 1.5, всё понятно – девайсы получили возможность не только быть звонилками, но и вполне полноценными смартфонами, то в случае таких необычных девайсов, как электронные переводчики – всё гораздо интереснее, ведь по сути, это дешёвые альтернативы таким легендарным устройствам, как HP Jornada! Недавно я купил переводчик Ectaco за 1.500 рублей на Windows CE, обошел встроенную оболочку, написал программу, которая твикает реестр и даже портировал туда эмулятор NES. Интересно узнать об этом процессе во всех подробностях? Тогда добро пожаловать под кат!

Читать далее

Кастомизация окна прогресса в оболочке Windows

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров5.2K

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

Но есть здесь и нюанс: загрузчик — это первое, что встречают пользователи, поэтому ему нужен GUI. А поскольку написан он на C# и с целью сохранения лёгкости компилируется перед исполнением (AOT, ahead-of-time), традиционные решения исключаются. Соблазнительным вариантом выглядит Avalonia, но в этом случае сам установщик станет больше той программы, которую он должен устанавливать.

Итак, что у нас остаётся? Можно углубиться в Windows API и создать собственное «окно», но это кроличья нора, сулящая кошмары при обслуживании. К счастью, в Windows есть диалоговое окно прогресса.
Читать дальше →

Ближайшие события

WindowsHostsManager: Консольная утилита для работы с файлом hosts в Windows на Python

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.7K

Иногда возникает необходимость внести изменения в файл hosts в Windows. Вместе с этой потребностью родилась идея создать небольшую утилиту на Python, которая бы упростила процесс редактирования этого файла. В результате появился WindowsHostsManager — инструмент, созданный всего за 30 минут и предназначенный для удобного управления файлом hosts.

Читать далее

Как я исправил сбой Microsoft Store в Windows (и при чём здесь Python)

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров24K

Весной 2022 года у меня неожиданно перестал работать Microsoft Store. Вместо загрузки списка приложений (хотя бы бесплатных) просто отображалось сообщение о невозможности загрузить страницу и код ошибки: 0x80131500.

Читать далее

Интригующее расследование QUEENCREEK

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров7.1K

На ваших машинах — будь то домашних ПК или корпоративных серверах — установлено много программного обеспечения, которое разработано с учётом автоматического запуска без участия пользователя.

Вот хорошие примеры:

  • Жизненно важные системные и пользовательские службы, такие как подключение к сети или синхронизация времени, которые запускаются при старте системы.
  • Антивирус или другие решения для обеспечения безопасности, запускающиеся сразу после загрузки ОС.
  • Проверка обновлений критического ПО, выполняющаяся каждые несколько часов.

К сожалению, программное обеспечение, которое запускается автоматически, является очень заманчивым для вредоносного ПО. Такое ПО зачастую устанавливает автоматизированные исполняемые файлы, которые могут периодически активировать свой вредоносный код с целью сохранить присутствие в системе. В связи с этим важно обеспечить, чтобы в системе не было никаких подозрительных автоматизированных скриптов, которые могут оказаться вредоносными (или просто нежелательными).
Читать дальше →

Как создавалось меню «Пуск» в Windows: от битмапов до динамического рендеринга

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров3.2K

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

Читать далее

«Бобер выдыхай»: Go, WinAPI и ассемблер

Уровень сложностиСложный
Время на прочтение22 мин
Количество просмотров11K

Что вам приходит в голову при слове «Golang»? Google и микросервисы? Я тоже так думал, но реальность оказалась значительно интересней.

Читать далее

Сравнение технологий для написания оконных приложений

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров17K

Как-то раз в одном чате прозвучала идея сравнить разные технологии для написания оконных приложений. В частности, под Windows. Используя средства языка C#. То есть, конечно, можно это сделать и с помощью C++, Python, Rust, JS и других языков, но мы же шарписты, нам интереснее именно то, что мы можем сами использовать, не меняя язык программирования.

Итак, оконные приложения на C#.

Читать далее

Библиотека EremexControls.NET для Avalonia UI — Обновление июль-август 2024

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.7K

Мы решили на регулярной основе рассказывать вам о развитии нашей линейки контролов для Avalonia UI. За время, прошедшее с момента предыдущей публикации, появилось несколько интересных моментов и один новый компонент.

Читать далее

Вклад авторов