Блог
Практические статьи KomuraSoft LLC о разработке сайтов, SEO, Google Ads, разработке для Windows, использовании существующих систем и расследовании сбоев.
ИИ-поиск по всему сайту
Поисковые запросы передаются в Cloudflare AI Search для формирования результатов. Не вводите персональные данные.
-
Автоматизация бизнес-процессов в Power Automate — облачные потоки, потоки на компьютере и обработка ошибок
Разбираем, чем облачный поток Power Automate отличается от потока на компьютере, как их сочетать с PowerShell и VBA, какие лицензии нужны для выполнения без ...
-
Дженерики в Ada ── контракты через типы и повторное использование без накладных расходов
Систематическое руководство по обобщённому программированию в Ada: обобщённые подпрограммы и пакеты, формальные параметры-подпрограммы, категории типов и пра...
-
Программирование систем реального времени на Ada — приоритеты, периодичность и контроль времени выполнения на практике
Изучаем Annex D Ada (системы реального времени) на 8 практических примерах кода: приоритеты задач, протокол Ceiling_Locking, периодическое выполнение через d...
-
Fable больше не в подписке, но сдаваться рано ── OpenRouter Fusion+китайские LLM+слой ревью
До Fable этому далеко. Но если собрать пять китайских LLM через OpenRouter Fusion и добавить ревью gpt-5.5-pro или PR-ревью Codex, получится агент для написа...
-
Безопасная конкурентность в Ada — практическое руководство по задачам и защищённым объектам
Вводная статья о встроенной в язык Ada конкурентности — задачах и защищённых объектах. Рассматриваем рандеву (entry/accept), выборочный accept, взаимное искл...
-
Введение в формальную верификацию SPARK ── от контрактов Ada к математическому доказательству
Практическое введение в формальную верификацию SPARK — подмножества Ada. Как подняться от контрактов (Pre/Post) к доказательству, как пользоваться GNATprove,...
-
Привлекательность языка Ada ── типы выражают проект, язык, который держит ПО, работающее десятилетиями
Разбираем, чем привлекателен язык Ada. Сильная типизация, ограничения диапазона, разделение спецификации и реализации через пакеты, контрактное проектировани...
-
Что такое MFC в Windows: основы для сопровождения существующих приложений
Разбираем обзор Microsoft Foundation Classes (MFC): связь с Win32, структуру приложения, карты сообщений, архитектуру Document/View, DDX/DDV и нюансы, важные...
-
Что сделать перед утилизацией Windows PC — практический чек-лист по стиранию данных, отвязке учётных записей и резервному копированию
Что стоит сделать перед утилизацией, передачей, продажей или возвратом лизингового ПК с Windows: резервное копирование, стирание данных, BitLocker, учётная з...
-
Что такое PDB (Program Database) — отладочная информация, символы и Source Link
Что такое PDB (Program Database), что в нём есть и чего нет, как он связан с Debug и Release, Portable PDB, Source Link, серверами символов и разбором дампов...
-
Roslyn: как читать, править и генерировать C# глазами компилятора
Разбираем Roslyn (.NET Compiler Platform): Syntax Tree, SemanticModel, Workspace, Analyzer, Source Generator — где это применять на практике и на что смотреть.
-
Что продумать перед заказом разработки Windows-приложения
Перед заказом разработки Windows-приложения разберём, что стоит прояснить: доработка существующего ПО, интеграция с оборудованием, COM/ActiveX, развёртывание...
-
Алгебраические типы данных в .NET Framework и .NET — состояние и результат через тип
Как выразить алгебраические типы данных, в первую очередь типы-суммы и размеченные объединения, в .NET Framework и в современном .NET: F#, иерархии классов в...
-
Как работать с токенами олицетворения Windows — олицетворение на уровне потока и безопасный откат
В статье собраны практические правила безопасной работы с токенами олицетворения Windows: токен доступа, первичный токен, токен потока, уровни олицетворения,...
-
TCP не отдаёт Receive теми же порциями, что Send — приём как байтовый поток
Если считать, что в TCP данные приходят теми же порциями, которыми их отправили через Send или Write, возникают разбиение, склейка, порча текста и поломка пр...
-
.NET: как отличить ожидание GC от утечки памяти — практические шаги наблюдения, сравнения и доказательства роста памяти
Разбираем, как с помощью dotnet-counters, dotnet-gcdump и dotnet-dump определить, растёт ли память в .NET-приложении из-за ожидания сборки мусора или это дей...
-
Как запустить PowerShell из C# (CSharp) и получить результат в виде объектов
Разбираем, как запустить PowerShell из C# и получить результат не строкой, а как PSObject: PowerShell SDK, AddCommand, AddParameter, BaseObject, Properties и...
-
Тесты PowerShell на Pester — практическая схема, которая делает эксплуатационные скрипты устойчивее к поломкам
Практические шаги, как тестировать PowerShell-скрипты на Pester v5: даты, файловые операции, удаление, Mock и запуск в CI выстраиваем безопасно.
-
Почему Windows стала такой: эволюция глазами разработчика
Прослеживаем изменения от Windows 95 до Windows 11 не как хронику внешнего вида, а глазами разработчика Windows-приложений: совместимость, стабильность, прав...
-
Настройка CPU для разработчика Windows-приложений: приоритет, affinity, P-ядра и E-ядра
Для разработчиков Windows-приложений: как связаны приоритет CPU, affinity, P-ядра и E-ядра, настройки питания и EcoQoS/Efficiency Mode, и как измерять произв...
-
Странная любовь разработчика, или Как я перестал беспокоиться и полюбил Windows
Windows — штука хлопотная. Но эти хлопоты — как раз от того, что это ОС, которая тащила на себе реальную работу.
-
Практические команды PowerShell — мелкие приёмы для повседневной работы
Разбираем практические команды PowerShell для повседневной работы: где применять Measure-Object, Group-Object, Select-String, Compare-Object, Tee-Object, Sta...
-
PowerShell на практике — безопасная автоматизация анализа логов, архивирования и отчётов
Разбираем практический порядок безопасной работы со скриптами PowerShell: анализ логов, CSV-отчёты, архивирование старых логов, сохранение артефактов запуска...
-
Основы команд PowerShell — операции, которые стоит выучить первыми, и как использовать их безопасно
Чтобы в реальной работе не теряться с PowerShell, разбираем поиск командлетов, конвейер, операции с файлами, обработку CSV, политику выполнения и порядок про...
-
Почему Windows показывает сообщение «Windows защитил ваш компьютер»
Разбираем на практике, почему при распространении Windows-приложения появляется предупреждение SmartScreen: подпись кода, сертификаты EV/OV, Azure Artifact S...
-
Как избавиться от зависимости внутренних веб-систем от режима IE
Практические шаги, как безопасно продлить жизнь внутренних веб-систем, зависящих от режима IE в Microsoft Edge, и одновременно выйти из этой зависимости. Раз...
-
Office 2024/Microsoft 365: почему не работает ActiveX и как это диагностировать
Когда ActiveX не работает в Office 2024/Microsoft 365, разбираем порядок диагностики: отключение по умолчанию, 32-бит/64-бит, регистрация COM, зависимые DLL,...
-
Гид по подготовке VBA и внутренних инструментов к отказу от VBScript
Готовимся к поэтапному отказу от VBScript: инвентаризация VBA, макросов Excel и внутренних инструментов, статическое обнаружение, сбор логов выполнения, выбо...
-
Почему письма с формы обратной связи не доходят и как это исправить
Разбираем причины недоставки уведомлений с формы обратной связи: SPF/DKIM/DMARC, заголовок From, внешний SMTP, общий хостинг, PHP mail() и порядок диагностики.
-
Что такое GCPW — вход в Windows через аутентификацию Google
Разбираем устройство Google Credential Provider for Windows (GCPW): совместную работу с Windows device management, существующие профили, первый вход, офлайн-...