<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
  <title type="text">Блог KomuraSoft LLC (русский)</title>
  <subtitle type="text">Практические статьи KomuraSoft LLC о разработке сайтов, SEO, Google Ads, разработке для Windows, использовании существующих систем и расследовании сбоев.</subtitle>
  <id>https://comcomponent.com/ru/feed.xml</id>
  <link rel="alternate" type="text/html" hreflang="ja" href="https://comcomponent.com/blog/"/>
  <link rel="alternate" type="text/html" hreflang="en" href="https://comcomponent.com/en/blog/"/>
  <link rel="alternate" type="text/html" hreflang="ko" href="https://comcomponent.com/ko/blog/"/>
  <link rel="alternate" type="text/html" hreflang="zh-Hant" href="https://comcomponent.com/zh-TW/blog/"/>
  <link rel="alternate" type="text/html" hreflang="zh-Hans" href="https://comcomponent.com/zh-CN/blog/"/>
  <link rel="alternate" type="text/html" hreflang="ar" href="https://comcomponent.com/ar/blog/"/>
  <link rel="alternate" type="text/html" hreflang="fr" href="https://comcomponent.com/fr/blog/"/>
  <link rel="alternate" type="text/html" hreflang="ru" href="https://comcomponent.com/ru/blog/"/>
  <link rel="alternate" type="text/html" hreflang="it" href="https://comcomponent.com/it/blog/"/>
  <link rel="alternate" type="text/html" hreflang="de" href="https://comcomponent.com/de/blog/"/>
  <link rel="alternate" type="text/html" hreflang="es" href="https://comcomponent.com/es/blog/"/>
  <link rel="self" type="application/atom+xml" href="https://comcomponent.com/ru/feed.xml"/>
  <updated>2026-07-22T00:00:00+00:00</updated>
  <rights>© 2026 KomuraSoft LLC</rights>
  <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator>
  <author>
    <name>小村 豪</name>
    <uri>https://comcomponent.com/ru/profile/go-komura/</uri>
  </author>
  
  <entry xml:lang="ru">
    <title type="text">Обработка ошибок и повторные попытки в Power Automate — как не допустить, чтобы работающий поток незаметно остановился</title>
    <id>https://comcomponent.com/ru/blog/power-automate-error-handling-retry-design/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/power-automate-error-handling-retry-design/"/>
    <published>2026-07-18T01:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Сборник паттернов проектирования, которые не дают потокам Power Automate незаметно останавливаться: значения политики повторов по умолчанию, конструкция Try-Catch на основе областей (Scope), уведомления об ошибках, повторная отправка и идемпотентность, управление параллелизмом — всё на основе спецификаций Microsoft Learn.</summary>
    
    
    
    <category term="Power Automate"/>
    
    <category term="Обработка ошибок"/>
    
    <category term="Облачный поток"/>
    
    <category term="Повторные попытки"/>
    
    <category term="Идемпотентность"/>
    
    <category term="Мониторинг эксплуатации"/>
    
    <category term="Автоматизация бизнес-процессов"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Обработка ошибок и повторные попытки в PowerShell — от ловушки нерабочего try/catch до exit code и типовых схем повтора</title>
    <id>https://comcomponent.com/ru/blog/powershell-error-handling-retry-design/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/powershell-error-handling-retry-design/"/>
    <published>2026-07-18T00:30:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем на практике различия между завершающими и незавершающими ошибками в PowerShell, ловушку неработающего try/catch и приём -ErrorAction Stop, определение успеха через $LASTEXITCODE, проектирование exit code и повторные попытки с экспоненциальной задержкой.</summary>
    
    
    
    <category term="PowerShell"/>
    
    <category term="Windows"/>
    
    <category term="Обработка ошибок"/>
    
    <category term="Повторные попытки"/>
    
    <category term="Автоматизация"/>
    
    <category term="Улучшение эксплуатации"/>
    
    <category term="Скрипт"/>
    
    <category term="Планировщик заданий"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Проектирование регулярных потоков в Power Automate — практика обработки конца месяца, проверки рабочих дней и напоминаний</title>
    <id>https://comcomponent.com/ru/blog/power-automate-scheduled-flow-business-day-design/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/power-automate-scheduled-flow-business-day-design/"/>
    <published>2026-07-18T00:30:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практическое руководство по автоматизации регулярных процессов через триггер Recurrence в Power Automate: ловушка часового пояса UTC по умолчанию, работа с датами в выражениях, определение рабочих дней по мастер-списку праздников, проектирование напоминаний и эксплуатационные нюансы вплоть до автоматического отключения через 90 дней.</summary>
    
    
    
    <category term="Power Automate"/>
    
    <category term="Облачный поток"/>
    
    <category term="Регулярное выполнение"/>
    
    <category term="Рабочий день"/>
    
    <category term="Праздничные дни"/>
    
    <category term="SharePoint"/>
    
    <category term="Microsoft 365"/>
    
    <category term="Автоматизация бизнес-процессов"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Политика выполнения PowerShell и подпись скриптов — практическое руководство, как перестать «затыкать дыры» параметром Bypass</title>
    <id>https://comcomponent.com/ru/blog/powershell-execution-policy-script-signing/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/powershell-execution-policy-script-signing/"/>
    <published>2026-07-18T00:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Политика выполнения PowerShell — это «не граница безопасности, а защитный механизм». Разбираем различия между RemoteSigned и другими политиками, приоритет областей действия, Mark of the Web и Unblock-File, подпись скриптов и реалистичные варианты внутренней раздачи скриптов.</summary>
    
    
    
    <category term="PowerShell"/>
    
    <category term="Windows"/>
    
    <category term="Политика выполнения"/>
    
    <category term="Подпись кода"/>
    
    <category term="Безопасность"/>
    
    <category term="Скрипт"/>
    
    <category term="Улучшение эксплуатации"/>
    
    <category term="Автоматизация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Автоматизация переноса данных в базовую систему с помощью Power Automate for Desktop — замена ручного ввода из Excel и с бумаги автоматизацией интерфейса</title>
    <id>https://comcomponent.com/ru/blog/power-automate-desktop-legacy-app-data-entry/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/power-automate-desktop-legacy-app-data-entry/"/>
    <published>2026-07-18T00:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практическое руководство по замене ручного переноса данных в старые базовые системы без API автоматизацией интерфейса в Power Automate for desktop (PAD): что доступно бесплатно, какая лицензия нужна для безучастного выполнения и как обеспечить стабильность с помощью селекторов и обработки исключений.</summary>
    
    
    
    <category term="Power Automate"/>
    
    <category term="RPA"/>
    
    <category term="Поток рабочего стола"/>
    
    <category term="Автоматизация интерфейса"/>
    
    <category term="Excel"/>
    
    <category term="Базовая система"/>
    
    <category term="Автоматизация бизнес-процессов"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Автоматическая обработка PDF-файлов заказов и счетов, приходящих по почте, в Power Automate — проектирование сохранения, распределения, уведомлений и распознавания</title>
    <id>https://comcomponent.com/ru/blog/power-automate-email-attachment-automation/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/power-automate-email-attachment-automation/"/>
    <published>2026-07-17T12:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем проектирование автоматизации сохранения, распределения и уведомлений для PDF-файлов заказов и счетов, приходящих по почте, средствами Power Automate: предпосылки триггера Outlook и общего почтового ящика, защита от ложных срабатываний на изображения подписи, а также распознавание через AI Builder и нюансы лицензирования — с точки зрения практика.</summary>
    
    
    
    <category term="Power Automate"/>
    
    <category term="Облачный поток"/>
    
    <category term="Outlook"/>
    
    <category term="SharePoint"/>
    
    <category term="AI Builder"/>
    
    <category term="Автоматизация бизнес-процессов"/>
    
    <category term="Электронная почта"/>
    
    <category term="Office"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Создание процесса согласования в Power Automate — переводим бумажные и почтовые заявки в электронный вид</title>
    <id>https://comcomponent.com/ru/blog/power-automate-approval-workflow-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/power-automate-approval-workflow-guide/"/>
    <published>2026-07-17T11:30:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практическое руководство по переводу в электронный вид бумажных заявок на согласование и запросов из Excel-вложений с помощью Power Automate: типы действий согласования, выбор между Forms, SharePoint и Teams, как вести записи с учётом ограничений журнала выполнения, и обработка возвратов на доработку.</summary>
    
    
    
    <category term="Power Automate"/>
    
    <category term="Процесс согласования"/>
    
    <category term="Облачный поток"/>
    
    <category term="Microsoft 365"/>
    
    <category term="Teams"/>
    
    <category term="SharePoint"/>
    
    <category term="Forms"/>
    
    <category term="Автоматизация бизнес-процессов"/>
    
    <category term="Заявка на согласование"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Перенос макросов Excel VBA на Power Automate — что можно заменить Office Scripts, а что оставить как VBA</title>
    <id>https://comcomponent.com/ru/blog/excel-vba-to-power-automate-office-scripts/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/excel-vba-to-power-automate-office-scripts/"/>
    <published>2026-07-17T11:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем, можно ли перенести макросы Excel VBA на Power Automate: что заменяется Office Scripts, что умеет только VBA, ограничения коннектора, требования к лицензии и поэтапный подход к миграции, начинающийся с инвентаризации.</summary>
    
    
    
    <category term="Power Automate"/>
    
    <category term="VBA"/>
    
    <category term="Excel"/>
    
    <category term="Office"/>
    
    <category term="Office Scripts"/>
    
    <category term="Автоматизация бизнес-процессов"/>
    
    <category term="Облачный поток"/>
    
    <category term="Использование существующих активов"/>
    
    <category term="Миграция"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">10 главных угроз информационной безопасности 2026 — как читать рейтинг и от чего малому и среднему бизнесу действительно стоит защищаться</title>
    <id>https://comcomponent.com/ru/blog/ipa-10-major-threats-2026/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/ipa-10-major-threats-2026/"/>
    <published>2026-07-17T08:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">В «10 главных угрозах информационной безопасности 2026» IPA атаки программ-вымогателей заняли 1-е место 11-й год подряд, атаки на цепочку поставок — 2-е место, а впервые отобранный «киберриск, связанный с использованием ИИ» вошёл в тройку. Разбираем содержание топ-10 организационного раздела и то, какие угрозы малому и среднему бизнесу стоит воспринимать как свою проблему.</summary>
    
    
    
    <category term="Информационная безопасность"/>
    
    <category term="Меры безопасности"/>
    
    <category term="10 главных угроз"/>
    
    <category term="Программы-вымогатели"/>
    
    <category term="Атаки на цепочку поставок"/>
    
    <category term="AI"/>
    
    <category term="Малый и средний бизнес"/>
    
    <category term="IPA"/>
    
    <category term="B2B"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Реагирование на инциденты не заканчивается восстановлением — шаблон постмортема (предотвращения повторения) для небольших команд разработки</title>
    <id>https://comcomponent.com/ru/blog/postmortem-recurrence-prevention-small-teams/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/postmortem-recurrence-prevention-small-teams/"/>
    <published>2026-07-17T07:50:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Считать инцидент закрытым сразу после исправления и извинений — гарантированный способ повторить его снова. Адаптируем blameless-постмортем для небольших команд: шаблон на час работы, таблицу оценки силы мер против повторения и порядок триажа инцидентов.</summary>
    
    
    
    <category term="Расследование сбоев"/>
    
    <category term="Проектирование логов"/>
    
    <category term="Постмортем"/>
    
    <category term="Предотвращение повторения"/>
    
    <category term="Эксплуатация"/>
    
    <category term="Обслуживание"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Техническая консультация"/>
    
    <category term="Таблица решений"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Введение в ADR (Architecture Decision Record) — минимальный способ сохранить «почему мы спроектировали именно так» в небольшой команде</title>
    <id>https://comcomponent.com/ru/blog/adr-architecture-decision-record-small-teams/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/adr-architecture-decision-record-small-teams/"/>
    <published>2026-07-17T07:40:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Код никогда не объясняет, почему он написан именно так. Разбираем, как использовать ADR (Architecture Decision Record) — одно решение, один Markdown-файл — чтобы сохранить обоснование проектного решения: шаблон, таблицу решений «писать или не писать» и разобранные примеры.</summary>
    
    
    
    <category term="Проектирование"/>
    
    <category term="Обзор проектирования"/>
    
    <category term="Документация"/>
    
    <category term="ADR"/>
    
    <category term="Техническая консультация"/>
    
    <category term="Обслуживание"/>
    
    <category term="Контрактная разработка"/>
    
    <category term="Разработка Windows"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Обратная совместимость интерфейсов DLL и COM — таблица решений: какие изменения ломают вызывающую сторону</title>
    <id>https://comcomponent.com/ru/blog/dll-com-interface-backward-compatibility/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/dll-com-interface-backward-compatibility/"/>
    <published>2026-07-17T07:30:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Какие изменения DLL или COM-компонента на самом деле ломают вызывающую сторону? Разбираем три слоя совместимости — бинарную, исходную и поведенческую, — таблицу решений по типам изменений, железное правило неизменности интерфейсов COM и практическое руководство по эксплуатации semver.</summary>
    
    
    
    <category term="COM"/>
    
    <category term="DLL"/>
    
    <category term=".NET"/>
    
    <category term="C#"/>
    
    <category term="C++"/>
    
    <category term="Обратная совместимость"/>
    
    <category term="Версионирование"/>
    
    <category term="Устаревшие технологии"/>
    
    <category term="Использование существующих активов"/>
    
    <category term="Таблица решений"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Версионирование схемы БД бизнес-приложения — практика миграций, предотвращающая «у каждого клиента своя база»</title>
    <id>https://comcomponent.com/ru/blog/db-schema-migration-versioning-business-apps/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/db-schema-migration-versioning-business-apps/"/>
    <published>2026-07-17T07:20:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практическое руководство по версионированию схемы БД бизнес-приложения, установленного у множества клиентов. Разбираем PRAGMA user_version и реализацию последовательных миграций на C#, таблицу решений EF Core Migrations / DbUp / самописной реализации и двухэтапный релиз expand-contract.</summary>
    
    
    
    <category term="База данных"/>
    
    <category term="SQLite"/>
    
    <category term="SQL Server"/>
    
    <category term="Миграция"/>
    
    <category term="Управление схемой"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Обслуживание"/>
    
    <category term="Таблица решений"/>
    
    <category term="Разработка Windows"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">CI/CD для приложений WinForms / WPF на практике — автоматизация от сборки до подписи и распространения через GitHub Actions</title>
    <id>https://comcomponent.com/ru/blog/winforms-wpf-cicd-github-actions/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/winforms-wpf-cicd-github-actions/"/>
    <published>2026-07-17T07:10:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практическое руководство по настройке CI/CD для приложений WinForms / WPF через GitHub Actions. Минимальный YAML для сборки и тестов на windows-latest, нумерация версий по тегам, подключение подписи через signtool и таблица решений по интеграции CI для MSI/MSIX/ClickOnce/xcopy.</summary>
    
    
    
    <category term="CI/CD"/>
    
    <category term="GitHub Actions"/>
    
    <category term="WinForms"/>
    
    <category term="WPF"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Подпись кода"/>
    
    <category term="MSIX"/>
    
    <category term="Deployment"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Таблица решений"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Как безопасно вносить изменения в legacy-приложение без тестов — характеризационное тестирование и рефакторинг на практике</title>
    <id>https://comcomponent.com/ru/blog/characterization-test-legacy-refactoring/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/characterization-test-legacy-refactoring/"/>
    <published>2026-07-17T07:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">На примерах C# разбираем порядок характеризационного тестирования (метод golden master) для фиксации текущего поведения, способы создания «швов» (seam) и правила, не позволяющие смешивать рефакторинг с добавлением функциональности при безопасной доработке бизнес-приложений без тестов.</summary>
    
    
    
    <category term="Устаревшие технологии"/>
    
    <category term="Использование существующих активов"/>
    
    <category term="Рефакторинг"/>
    
    <category term="Проектирование тестов"/>
    
    <category term="Характеризационное тестирование"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Обслуживание"/>
    
    <category term="Таблица решений"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Чтобы не забыть решить, «за сколько секунд это должно работать» — упорядочиваем нефункциональные требования с помощью «Градации нефункциональных требований» IPA</title>
    <id>https://comcomponent.com/ru/blog/ipa-non-functional-requirements-grade/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/ipa-non-functional-requirements-grade/"/>
    <published>2026-07-17T06:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Причина многих споров вроде «слишком медленно» или «мы не ожидали такого поведения при сбое» — забытые нефункциональные требования. Разбираем простым языком для заказчика шесть крупных категорий, таблицу градации и модельные системы «Градации нефункциональных требований» IPA, а также реалистичный способ её применения.</summary>
    
    
    
    <category term="Нефункциональные требования"/>
    
    <category term="Определение требований"/>
    
    <category term="Контрактная разработка"/>
    
    <category term="Разработка систем"/>
    
    <category term="Градация нефункциональных требований"/>
    
    <category term="IPA"/>
    
    <category term="Проектирование"/>
    
    <category term="Техническая консультация"/>
    
    <category term="B2B"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Стоит ли оставлять техническое задание в контрактной разработке в Excel — как выбрать формат для результатов работы</title>
    <id>https://comcomponent.com/ru/blog/deliverable-spec-documents-format-excel-word/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/deliverable-spec-documents-format-excel-word/"/>
    <published>2026-07-17T06:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Стоит ли оставлять спецификации и проектную документацию, поставляемые в рамках контрактной разработки, в формате Excel «миллиметровки»? В статье разбираются проблемы Excel-спецификаций с точки зрения приёмки и сопровождения, а также объясняется, как выбрать формат, действительно работающий как результат работы — включая Word и генерацию документов из исходника на Markdown.</summary>
    
    
    
    <category term="Контрактная разработка"/>
    
    <category term="Спецификация"/>
    
    <category term="Проектная документация"/>
    
    <category term="Результаты работы"/>
    
    <category term="Приёмка"/>
    
    <category term="Изменение спецификации"/>
    
    <category term="Управление документацией"/>
    
    <category term="Excel"/>
    
    <category term="Word"/>
    
    <category term="BtoB"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Что стоит знать и заказчику сайта — используем «Руководство по созданию безопасного веб-сайта» IPA как чек-лист</title>
    <id>https://comcomponent.com/ru/blog/ipa-secure-website-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/ipa-secure-website-guide/"/>
    <published>2026-07-17T04:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">По какому критерию проверять безопасность корпоративного сайта? Разбираем 11 уязвимостей и мер противодействия из «Руководства по созданию безопасного веб-сайта» IPA языком, понятным заказчику и оператору сайта, и рассказываем, как использовать документ при заказе, приёмке и эксплуатации.</summary>
    
    
    
    <category term="Веб-разработка"/>
    
    <category term="Разработка сайтов"/>
    
    <category term="Информационная безопасность"/>
    
    <category term="Уязвимости"/>
    
    <category term="SQL-инъекция"/>
    
    <category term="XSS"/>
    
    <category term="IPA"/>
    
    <category term="WordPress"/>
    
    <category term="B2B"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Если ваше Windows-приложение приняли за вирус — как реагировать на ложные срабатывания Microsoft Defender и жить с влиянием на производительность</title>
    <id>https://comcomponent.com/ru/blog/windows-defender-false-positive-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/windows-defender-false-positive-guide/"/>
    <published>2026-07-17T04:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем правильный порядок действий, если Microsoft Defender ложно определяет ваше Windows-приложение как вредоносное: как устроена современная антивирусная защита, как подать заявку о ложном срабатывании в Microsoft, как восстановить файл из карантина и как корректно настроить исключения с учётом рисков.</summary>
    
    
    
    <category term="Microsoft Defender"/>
    
    <category term="Антивирусная защита"/>
    
    <category term="Ложные срабатывания"/>
    
    <category term="Подпись кода"/>
    
    <category term="SmartScreen"/>
    
    <category term="Распространение приложений"/>
    
    <category term="Безопасность"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Спящий режим, гибернация, Modern Standby и долго работающие приложения — как проектированием предотвратить «остановилось ночью»</title>
    <id>https://comcomponent.com/ru/blog/windows-sleep-modern-standby-long-running-apps/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/windows-sleep-modern-standby-long-running-apps/"/>
    <published>2026-07-17T03:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем, почему долго работающее Windows-приложение оказывается «остановленным к утру», начиная с различий между спящим режимом S3, гибернацией и Modern Standby. Рассматриваем поведение таймеров и TCP-соединений во время сна и подавление сна через SetThreadExecutionState.</summary>
    
    
    
    <category term="Спящий режим"/>
    
    <category term="Modern Standby"/>
    
    <category term="Управление питанием"/>
    
    <category term="SetThreadExecutionState"/>
    
    <category term="Длительная работа"/>
    
    <category term="Таймер"/>
    
    <category term="Резидентное приложение"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Расследование сбоев"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">С чего начать защиту информации малому и среднему бизнесу — как пользоваться 4-й редакцией «Руководства IPA по информационной безопасности для МСБ»</title>
    <id>https://comcomponent.com/ru/blog/ipa-sme-security-guideline-v4/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/ipa-sme-security-guideline-v4/"/>
    <published>2026-07-17T02:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">С чего малому и среднему бизнесу начинать меры по информационной безопасности? На основе 4-й редакции «Руководства по мерам информационной безопасности для малого и среднего бизнеса» IPA пошагово разбираем шесть статей информационной безопасности, пятиминутную самопроверку и программу SECURITY ACTION.</summary>
    
    
    
    <category term="Информационная безопасность"/>
    
    <category term="Меры безопасности"/>
    
    <category term="Малый и средний бизнес"/>
    
    <category term="IPA"/>
    
    <category term="SECURITY ACTION"/>
    
    <category term="Программы-вымогатели"/>
    
    <category term="Резервное копирование"/>
    
    <category term="Улучшение бизнес-процессов"/>
    
    <category term="B2B"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Работают ли бизнес-приложения на Windows на Arm — реальность x64-эмуляции (Prism) и нативных DLL/COM</title>
    <id>https://comcomponent.com/ru/blog/windows-on-arm-business-apps/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/windows-on-arm-business-apps/"/>
    <published>2026-07-17T02:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Отвечаем разработчикам и ИТ-специалистам на вопрос «заработает ли наше бизнес-приложение на Windows на Arm». Разбираем принцип работы x64-эмуляции (Prism), слои, которые эмуляция не покрывает, проблему сочетания AnyCPU и P/Invoke в .NET, а также чек-лист готовности к Arm.</summary>
    
    
    
    <category term="Windows on Arm"/>
    
    <category term="Arm64"/>
    
    <category term="x64-эмуляция"/>
    
    <category term="Нативная интеграция"/>
    
    <category term="P/Invoke"/>
    
    <category term="COM"/>
    
    <category term="Драйверы"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Если вам досталась система без исходного кода и без документации — практический план, как сопровождать её, не останавливая работу</title>
    <id>https://comcomponent.com/ru/blog/no-source-no-docs-system-maintenance/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/no-source-no-docs-system-maintenance/"/>
    <published>2026-07-17T01:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем практический план начала эксплуатации и сопровождения бизнес-системы, у которой нет ни исходного кода, ни спецификаций. Охватываем сохранение и резервное копирование работающего окружения, инвентаризацию исполняемых файлов и БД, восстановление спецификации по поведению системы и выбор между продлением жизни, «обёртыванием» и пересборкой.</summary>
    
    
    
    <category term="Устаревшие технологии"/>
    
    <category term="Использование существующих активов"/>
    
    <category term="Эксплуатация и обслуживание"/>
    
    <category term="Обслуживание"/>
    
    <category term="Чёрный ящик"/>
    
    <category term="Реверс-инжиниринг"/>
    
    <category term="Передача дел"/>
    
    <category term="Расследование сбоев"/>
    
    <category term="Техническая консультация"/>
    
    <category term="Разработка Windows"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">MAX_PATH и подводные камни путей/имён файлов в Windows — лимит 260 символов, зарезервированные имена, конечная точка, регистр</title>
    <id>https://comcomponent.com/ru/blog/windows-max-path-filename-pitfalls/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/windows-max-path-filename-pitfalls/"/>
    <published>2026-07-17T01:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем ограничения путей и имён файлов, которые часто стоят за классической ошибкой «файл не найден». Рассматриваем состав лимита MAX_PATH=260, включение длинных путей через LongPathsEnabled, зарезервированные имена вроде CON, нормализацию конечных точек и ловушку Path.Combine.</summary>
    
    
    
    <category term="MAX_PATH"/>
    
    <category term="Пути к файлам"/>
    
    <category term="Длинные пути"/>
    
    <category term="Имя файла"/>
    
    <category term="NTFS"/>
    
    <category term="Win32"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Расследование сбоев"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Как правильно оформить договор на разработку по заказу и на сопровождение — выбор между договором доверительного поручения и договором подряда по «Модельному договору» IPA</title>
    <id>https://comcomponent.com/ru/blog/ipa-model-contract-development-maintenance/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/ipa-model-contract-development-maintenance/"/>
    <published>2026-07-17T01:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Как правильно оформить договор при передаче разработки системы на аутсорсинг? На основе «Модельного договора и сделки для информационных систем», публикуемого IPA, разбираем логику многоступенчатого договора, разницу между договором доверительного поручения и договором подряда, а также то, что нужно закрепить в договоре на эксплуатацию и сопровождение - доступным для заказчика языком.</summary>
    
    
    
    <category term="Договор на разработку систем"/>
    
    <category term="Разработка по заказу"/>
    
    <category term="Эксплуатация и сопровождение"/>
    
    <category term="Договор доверительного поручения"/>
    
    <category term="Договор подряда"/>
    
    <category term="IPA"/>
    
    <category term="Модельный договор"/>
    
    <category term="BtoB"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Подводные камни сетевых дисков и UNC-путей ── как бизнес-приложения работают с файловым сервером (общей папкой)</title>
    <id>https://comcomponent.com/ru/blog/network-share-unc-path-pitfalls/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/network-share-unc-path-pitfalls/"/>
    <published>2026-07-17T00:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Разбираем типичные проблемы, возникающие при выводе данных и мониторинге общей папки из бизнес-приложения: почему буква диска (Z:) не видна службе, какие права нужны для разных учётных записей запуска, ошибку 1219 и особенности работы FileSystemWatcher.</summary>
    
    
    
    <category term="Сетевой диск"/>
    
    <category term="UNC-путь"/>
    
    <category term="SMB"/>
    
    <category term="Общий доступ к файлам"/>
    
    <category term="Служба Windows"/>
    
    <category term="Файловый сервер"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Сеть"/>
    
    <category term="Расследование сбоев"/>
    
    <category term="Разработка Windows"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Что такое цифровой инвойс? — Чем это отличается от «отправки PDF-счёта по почте»</title>
    <id>https://comcomponent.com/ru/blog/what-is-digital-invoice-peppol-jp-pint/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/what-is-digital-invoice-peppol-jp-pint/"/>
    <published>2026-07-16T10:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Цифровой инвойс — это механизм, при котором данные счёта передаются напрямую из системы продавца в систему покупателя без участия человека. Разбираем отличие от PDF-счетов, связь с системой инвойсов, устройство Peppol и JP PINT, связь с Законом об электронном хранении бухгалтерских документов и практичный путь для малого и среднего бизнеса.</summary>
    
    
    
    <category term="Цифровой инвойс"/>
    
    <category term="Система инвойсов"/>
    
    <category term="Peppol"/>
    
    <category term="JP PINT"/>
    
    <category term="Счета-фактуры"/>
    
    <category term="Закон об электронном хранении бухгалтерских документов"/>
    
    <category term="EDI"/>
    
    <category term="B2B-операции"/>
    
    <category term="Повышение эффективности"/>
    
    <category term="Интеграция систем"/>
    
    <category term="BtoB"/>
    
    <category term="DX"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Значки в области уведомлений и всплывающие (toast) уведомления в Windows-приложениях — подводные камни NotifyIcon и выбор правильного AppNotification</title>
    <id>https://comcomponent.com/ru/blog/windows-tray-icon-toast-notification-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/windows-tray-icon-toast-notification-guide/"/>
    <published>2026-07-16T09:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практическое руководство о том, как удерживать бизнес-приложение Windows в области уведомлений (system tray) и оповещать пользователя с помощью всплывающих (toast) уведомлений. В статье рассматриваются правильное использование NotifyIcon, проектирование поведения «закрытие в трей», повторная регистрация значка после перезапуска Проводника, таблица выбора между тремя API уведомлений (Windows App SDK AppNotification / Community Toolkit / Windows.UI.Notifications), ограничения неупакованных прил...</summary>
    
    
    
    <category term="Область уведомлений"/>
    
    <category term="NotifyIcon"/>
    
    <category term="Toast-уведомления"/>
    
    <category term="AppNotification"/>
    
    <category term="Windows App SDK"/>
    
    <category term="WinForms"/>
    
    <category term="WPF"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="Резидентное приложение"/>
    
    <category term="Разработка под Windows"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">Миграция с WordPress на Movable Type — практическое руководство, которое стоит систематизировать именно потому, что это «обратное» направление</title>
    <id>https://comcomponent.com/ru/blog/wordpress-to-movabletype-migration-practical-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/wordpress-to-movabletype-migration-practical-guide/"/>
    <published>2026-07-16T08:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">Практический разбор процедуры миграции с WordPress на Movable Type (MovableType.net): случаи, когда миграция оправдана, импорт записей, страниц и изображений, работа с пользовательскими типами записей, сохранение SEO за счёт проектирования URL и редиректов 301, а также замена функциональности плагинов.</summary>
    
    
    
    <category term="Разработка сайтов"/>
    
    <category term="Улучшение существующего сайта"/>
    
    <category term="SEO"/>
    
    <category term="CMS"/>
    
    <category term="WordPress"/>
    
    <category term="Movable Type"/>
    
    <category term="Миграция сайта"/>
    
    <category term="Малый и средний бизнес"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
  <entry xml:lang="ru">
    <title type="text">До каких пор будут работать приложения VB6 ── состояние поддержки среды выполнения и практичный путь миграции на .NET</title>
    <id>https://comcomponent.com/ru/blog/vb6-to-dotnet-migration-practical-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/ru/blog/vb6-to-dotnet-migration-practical-guide/"/>
    <published>2026-07-16T06:00:00+00:00</published>
    <updated>2026-07-22T00:00:00+00:00</updated>
    
    <summary type="text">До каких пор будут работать приложения VB6? В статье разбирается асимметрия между политикой поддержки среды выполнения VB6 (поддерживается даже в Windows 11) и фактом уже завершённой поддержки IDE, а также в практическом ключе рассматриваются таблица решений «полная переписка / автоматическое преобразование / поэтапная миграция», инвентаризация перед миграцией, несовместимости VB6 и .NET, а также выбор между C# и VB.NET.</summary>
    
    
    
    <category term="VB6"/>
    
    <category term=".NET"/>
    
    <category term="C#"/>
    
    <category term="Устаревшие технологии"/>
    
    <category term="Использование существующих активов"/>
    
    <category term="Миграция"/>
    
    <category term="Модернизация"/>
    
    <category term="32-бит"/>
    
    <category term="Разработка под Windows"/>
    
    <category term="Таблица решений"/>
    
    <category term="Техническая консультация"/>
    
    
    <author>
      <name>Го Комура</name>
    </author>
  </entry>
  
</feed>
