Блог
Практические статьи KomuraSoft LLC о разработке сайтов, SEO, Google Ads, разработке для Windows, использовании существующих систем и расследовании сбоев.
ИИ-поиск по всему сайту
Поисковые запросы передаются в Cloudflare AI Search для формирования результатов. Не вводите персональные данные.
-
Расширенные настройки Windows NIC — RSS/LSO/EEE/Wake on LAN
Практический разбор расширенных настроек NIC в Windows: что меняется при настройке Jumbo Packet, Speed & Duplex, RSS, RSC, LSO, Flow Control, EEE, Wake on LA...
-
Как извлечь статичное изображение из MP4 по заданному времени с помощью Media Foundation
Как с помощью Source Reader извлечь из MP4 кадр, ближайший к заданному времени, привести в порядок stride и alpha-байт RGB32 и сохранить результат в PNG.
-
Минимальный чек-лист безопасности при разработке Windows-приложений
Систематизируем в виде чек-листа базовые меры безопасности для бизнес-приложений на WPF / WinForms / WinUI / C++ / C#: права доступа, подпись кода, обновлени...
-
Что такое .NET Generic Host — основа для DI, конфигурации и логирования
Разбираем роль Generic Host через связь DI, конфигурации, логирования, IHostedService и BackgroundService — и с практической точки зрения показываем, где он ...
-
Что такое .NET Native AOT — чем он отличается от JIT и trimming
Разбираемся, что такое Native AOT, через различия с JIT, ReadyToRun, self-contained, single-file, trimming и source generator, и с практической точки зрения ...
-
Что такое COM / ActiveX / OCX - объясняем различия и связь между ними
Разбираем с практической точки зрения, что такое COM, что такое ActiveX и что такое OCX: их различия и связь, связь с OLE, где они применяются и как относить...
-
Как выбирать между тремя таймерами .NET - PeriodicTimer/Timer/DispatcherTimer
Разбираем различия между PeriodicTimer, System.Threading.Timer и DispatcherTimer и то, как выбирать между ними для async-обработки, callback'ов ThreadPool и ...
-
Как вызвать C# Native AOT DLL из C/C++
Разбираем, как публиковать библиотеку классов C# в виде нативной DLL через Native AOT и вызывать точки входа UnmanagedCallersOnly из C/C++ — где это уместно,...
-
Зачем использовать .NET Generic Host и BackgroundService в десктопных приложениях
Разбираем, как использовать Generic Host и BackgroundService, чтобы упорядочить запуск, периодическую обработку, завершение работы, логирование, конфигурацию...
-
Как сегодня поступать с ActiveX / OCX - таблица решений: оставить, обернуть или заменить
Разбираем, что выбрать при обнаружении ActiveX / OCX — оставить, обернуть или заменить, — учитывая 32-бит/64-бит, регистрацию, зависимость от браузера и подд...