<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title type="text">KomuraSoft LLC Blog</title>
  <subtitle type="text">Windows / C# / COM engineering notes from KomuraSoft LLC.</subtitle>
  <id>https://comcomponent.com/en/feed.xml</id>
  <link rel="alternate" type="text/html" hreflang="en" href="https://comcomponent.com/en/blog/"/>
  <link rel="alternate" type="text/html" hreflang="ja" href="https://comcomponent.com/blog/"/>
  <link rel="self" type="application/atom+xml" href="https://comcomponent.com/en/feed.xml"/>
  <updated>2026-09-14T00: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/en/profile/go-komura/</uri>
  </author>
  
  <entry xml:lang="en">
    <title type="text">Building a PowerShell Analysis Tool in PowerShell — Read Scripts with the AST, Not Regular Expressions</title>
    <id>https://comcomponent.com/en/blog/powershell-ast-script-analysis-tool/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/powershell-ast-script-analysis-tool/"/>
    <published>2026-09-13T06:30:00+00:00</published>
    <updated>2026-09-14T00:00:00+00:00</updated>
    
    <summary type="text">Display a real PowerShell AST and see what object each line of code becomes. Walk from ScriptBlockAst to CommandAst and find where Write-Host is called, excluding comments and ordinary strings.</summary>
    
    
    
    <category term="PowerShell"/>
    
    <category term="AST"/>
    
    <category term="Static Analysis"/>
    
    <category term="Developer Tools"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">How Does a Windows Shortcut Find a File You Moved? — A File&apos;s Location and Its Identity Are Two Different Things</title>
    <id>https://comcomponent.com/en/blog/windows-shortcut-moved-file-tracking/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-shortcut-moved-file-tracking/"/>
    <published>2026-09-12T03:20:00+00:00</published>
    <updated>2026-09-13T00:00:00+00:00</updated>
    
    <summary type="text">Why does a shortcut still open a file you moved? Windows can find the target from tracking identifiers and file characteristics, not just the stored path, within limits.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="File System"/>
    
    <category term="NTFS"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Is Safely Removing a USB Drive Still Necessary? — Thinking It Through from Quick Removal and Write Caching</title>
    <id>https://comcomponent.com/en/blog/windows-usb-safe-removal-write-cache/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-usb-safe-removal-write-cache/"/>
    <published>2026-09-12T00:45:00+00:00</published>
    <updated>2026-09-13T00:00:00+00:00</updated>
    
    <summary type="text">Can you pull a USB drive once the copy finishes? Write caching, Quick removal versus Better performance, how to check the setting, and what to do when a device is in use.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="USB"/>
    
    <category term="Storage"/>
    
    <category term="Troubleshooting"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Why Does Audio Drop Out When CPU Usage Is Low? — Thinking in Terms of Buffers and Deadlines</title>
    <id>https://comcomponent.com/en/blog/windows-audio-dropouts-low-cpu/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-audio-dropouts-low-cpu/"/>
    <published>2026-09-11T13:45:00+00:00</published>
    <updated>2026-09-13T00:00:00+00:00</updated>
    
    <summary type="text">Audio drops out while CPU usage stays low. This explains why from the playback buffer and the refill deadline, why a bigger buffer adds latency, and how to investigate.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Audio"/>
    
    <category term="Performance"/>
    
    <category term="Troubleshooting"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Why Is RDP Sluggish on a Fast Connection? — Separating Input, Rendering, and the Network</title>
    <id>https://comcomponent.com/en/blog/windows-rdp-slow-fast-network/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-rdp-slow-fast-network/"/>
    <published>2026-09-11T02:00:00+00:00</published>
    <updated>2026-09-11T00:00:00+00:00</updated>
    
    <summary type="text">The speed test is fast, yet Remote Desktop input and scrolling lag. This explains why, from round trips and graphics transfer to symptom comparisons and counter readings.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="RDP"/>
    
    <category term="Remote Desktop"/>
    
    <category term="Performance"/>
    
    <category term="Troubleshooting"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The Network Works but Windows Says &quot;No internet&quot; — Isolating NCSI, DNS, Proxy, and VPN on Windows</title>
    <id>https://comcomponent.com/en/blog/windows-ncsi-no-internet-connected/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-ncsi-no-internet-connected/"/>
    <published>2026-09-11T01:00:00+00:00</published>
    <updated>2026-09-11T00:00:00+00:00</updated>
    
    <summary type="text">Why Windows says &quot;No internet&quot; while the network works, starting from the NCSI verdict. Isolate DNS, proxy, VPN, and captive portals with read-only checks and event logs.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Windows Development"/>
    
    <category term="Networking"/>
    
    <category term="NCSI"/>
    
    <category term="DNS"/>
    
    <category term="Proxy"/>
    
    <category term="VPN"/>
    
    <category term="PowerShell"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Why Does ‘1 Second Remaining’ Take So Long? — How Progress Bars and Time Estimates Work</title>
    <id>https://comcomponent.com/en/blog/progress-bar-remaining-time/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/progress-bar-remaining-time/"/>
    <published>2026-09-08T20:00:00+00:00</published>
    <updated>2026-09-09T00:00:00+00:00</updated>
    
    <summary type="text">Learn why a task stays at one second remaining, stalls at 99%, or keeps preparing. Separate progress units, speed estimates, final steps, and UI updates, then compare different displays in an interactive demo.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Progress bars"/>
    
    <category term="Time remaining"/>
    
    <category term="UI"/>
    
    <category term="Performance"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Why a Windows File Share Works Sometimes and Fails at Other Times — Troubleshooting Kerberos, NTLM, and Credentials</title>
    <id>https://comcomponent.com/en/blog/smb-share-access-troubleshooting/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/smb-share-access-troubleshooting/"/>
    <published>2026-09-08T09:00:00+00:00</published>
    <updated>2026-09-09T00:00:00+00:00</updated>
    
    <summary type="text">Diagnose intermittent Windows file-share access using symptoms and logs. Check names versus IP addresses, app-only failures, blank passwords, error 1219, restarts, and SMB signing, and learn what each result actually proves.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="SMB"/>
    
    <category term="Kerberos"/>
    
    <category term="NTLM"/>
    
    <category term="File shares"/>
    
    <category term="Troubleshooting"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Disk at 100%: What Do You Actually Have to Stop? — Telling SysMain, Windows Search, and Defender Apart</title>
    <id>https://comcomponent.com/en/blog/windows-disk-100-safe-diagnosis/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-disk-100-safe-diagnosis/"/>
    <published>2026-09-05T04:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Isolate Windows 100% disk usage by throughput, response time, and files. Pause SysMain safely, narrow Windows Search, and analyze Defender without disabling it.</summary>
    
    
    
    <category term="Windows 11"/>
    
    <category term="Performance"/>
    
    <category term="Bug Investigation"/>
    
    <category term="SysMain"/>
    
    <category term="Windows Search"/>
    
    <category term="Microsoft Defender"/>
    
    <category term="PowerShell"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Same 1 GB, Yet a Photo Folder Copies Slower Than a Single Video — Why?</title>
    <id>https://comcomponent.com/en/blog/windows-small-files-copy-slow/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-small-files-copy-slow/"/>
    <published>2026-09-05T00:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Why same-size data copies at different speeds on Windows: file count, SSD and NAS latency, ZIP bundling, a create-transfer-extract comparison, and robocopy.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Windows 11"/>
    
    <category term="File Copy"/>
    
    <category term="Performance"/>
    
    <category term="SSD"/>
    
    <category term="NAS"/>
    
    <category term="ZIP"/>
    
    <category term="robocopy"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">What Is Windows&apos; Hardware-Accelerated GPU Scheduling? — Does Turning It On Make Your PC Faster?</title>
    <id>https://comcomponent.com/en/blog/windows-hardware-accelerated-gpu-scheduling/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-hardware-accelerated-gpu-scheduling/"/>
    <published>2026-09-04T15:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">An illustrated, non-technical guide to Windows&apos; hardware-accelerated GPU scheduling (HAGS): how it works, when to turn it on or off, why the setting may be missing, how it relates to frame generation, and how to compare safely.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Windows 11"/>
    
    <category term="GPU"/>
    
    <category term="Performance"/>
    
    <category term="Windows Settings"/>
    
    <category term="HAGS"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The Order of Name Resolution on Windows — hosts, the DNS Cache, LLMNR/mDNS, and DoH</title>
    <id>https://comcomponent.com/en/blog/windows-name-resolution-order-hosts-dns-cache-llmnr-mdns-doh/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-name-resolution-order-hosts-dns-cache-llmnr-mdns-doh/"/>
    <published>2026-09-04T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Whether hosts, the DNS cache, the DNS server, or LLMNR/mDNS answered decides why some PCs fail. Learn the Windows name resolution order, what DoH changes, and how to isolate each layer.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="DNS"/>
    
    <category term="Name Resolution"/>
    
    <category term="Networking"/>
    
    <category term="Bug Investigation"/>
    
    <category term="PowerShell"/>
    
    <category term="TCP/IP"/>
    
    <category term="Information Systems"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Does Turning Off Memory Integrity (HVCI) Make Windows Faster? — What It Means, How to Do It, and How to Decide</title>
    <id>https://comcomponent.com/en/blog/windows-memory-integrity-hvci-off-performance/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-memory-integrity-hvci-off-performance/"/>
    <published>2026-09-04T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Does turning off Memory integrity (HVCI) really speed up a Windows PC? When it can help, when it cannot, how to switch it off and back, and how to decide.</summary>
    
    
    
    <category term="Windows 11"/>
    
    <category term="Memory Integrity"/>
    
    <category term="HVCI"/>
    
    <category term="Core Isolation"/>
    
    <category term="VBS"/>
    
    <category term="Performance"/>
    
    <category term="Security"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">What Fast Startup Really Does — Why a Windows &apos;Shutdown&apos; Is Not the Same as a Restart</title>
    <id>https://comcomponent.com/en/blog/windows-fast-startup-hybrid-shutdown-explained/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-fast-startup-hybrid-shutdown-explained/"/>
    <published>2026-09-04T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">A Windows shutdown is a hybrid shutdown by default, saving the kernel and drivers to hiberfil.sys. Why only a restart resets them, and when to turn Fast Startup off.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Fast Startup"/>
    
    <category term="Shutdown"/>
    
    <category term="Power Management"/>
    
    <category term="Information Systems"/>
    
    <category term="Device PC"/>
    
    <category term="PowerShell"/>
    
    <category term="Windows Development"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Time Travel Debugging — Recording and Rewinding the Bugs That Never Reproduce in Long-Running Apps</title>
    <id>https://comcomponent.com/en/blog/windows-time-travel-debugging-ttd/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-time-travel-debugging-ttd/"/>
    <published>2026-09-02T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">A once-a-month bug leaves only its result in a crash dump. Record and rewind execution with WinDbg Time Travel Debugging (TTD): TTD.exe, ring buffers, and TTD.Calls.</summary>
    
    
    
    <category term="WinDbg"/>
    
    <category term="Time Travel Debugging"/>
    
    <category term="Debugging"/>
    
    <category term="Bug Investigation"/>
    
    <category term="Windows"/>
    
    <category term="Windows Development"/>
    
    <category term=".NET"/>
    
    <category term="C++"/>
    
    <category term="Technical Consulting"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Why Arguments Break — The Rules of Windows Command-Line Arguments</title>
    <id>https://comcomponent.com/en/blog/windows-command-line-argument-rules/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-command-line-argument-rules/"/>
    <published>2026-09-02T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Windows passes CreateProcess a single string that the receiver splits. Covers the CommandLineToArgvW, CRT, and .NET rules, ArgumentList, and building it in C++.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Windows Development"/>
    
    <category term="C#"/>
    
    <category term="C++"/>
    
    <category term="Win32 API"/>
    
    <category term=".NET"/>
    
    <category term="Process"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Dark Mode and Contrast Themes in Windows Apps — DWM Dark Title Bars, System Theme Tracking in WinForms/WPF, and Drawing under High Contrast</title>
    <id>https://comcomponent.com/en/blog/windows-app-dark-mode-contrast-theme-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-app-dark-mode-contrast-theme-guide/"/>
    <published>2026-09-02T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">How to make WinForms/WPF apps follow the dark mode and contrast themes of Windows 11. Covers DWM dark title bars, SetColorMode and ThemeMode in .NET 9/10, detecting theme changes, and drawing with system colors under high contrast.</summary>
    
    
    
    <category term="Dark Mode"/>
    
    <category term="Contrast Themes"/>
    
    <category term="High Contrast"/>
    
    <category term="DWM"/>
    
    <category term="WinForms"/>
    
    <category term="WPF"/>
    
    <category term="Windows 11"/>
    
    <category term="Accessibility"/>
    
    <category term="Business Applications"/>
    
    <category term="Windows"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">End of Servicing for Windows Printer Drivers — How Business Apps Should Prepare Their Report and Label Printing</title>
    <id>https://comcomponent.com/en/blog/windows-print-driver-end-of-servicing-business-apps/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-print-driver-end-of-servicing-business-apps/"/>
    <published>2026-09-01T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Microsoft is phasing out v3/v4 printer drivers. What Windows protected print mode removes, and how to inventory and prepare report and label printing in business apps.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Windows Development"/>
    
    <category term="Windows 11"/>
    
    <category term="C#"/>
    
    <category term=".NET"/>
    
    <category term="WinForms"/>
    
    <category term="WPF"/>
    
    <category term="Printing"/>
    
    <category term="Reports"/>
    
    <category term="Printer Driver"/>
    
    <category term="IPP"/>
    
    <category term="Operations"/>
    
    <category term="Technical Consulting"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">WinRT Is COM — IInspectable, .winmd, Language Projections, and Why WinUI Still Rests on a Binary Contract</title>
    <id>https://comcomponent.com/en/blog/winrt-is-com/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/winrt-is-com/"/>
    <published>2026-08-29T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">WinRT is not a managed runtime but an ABI built on COM plus .winmd metadata and language projections. Covers IUnknown vs. IInspectable, HWND setup, and package identity.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="WinRT"/>
    
    <category term="COM"/>
    
    <category term="WinUI"/>
    
    <category term="Windows App SDK"/>
    
    <category term="Windows Development"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">What Is Left After the Parent Dies — Keeping Child Processes in a Job Object</title>
    <id>https://comcomponent.com/en/blog/windows-job-object-child-process-lifetime/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-job-object-child-process-lifetime/"/>
    <published>2026-08-29T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Why do SDK helpers outlive a killed UI and keep the camera or COM port? Designing child process lifetime with Job Objects, KillOnJobClose, and completion ports.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Windows Development"/>
    
    <category term="C#"/>
    
    <category term="C++"/>
    
    <category term="Win32 API"/>
    
    <category term="Measurement and Control"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">What Is an OLE Object? — How Embedding and Linking Work and the Pitfalls in Business Documents</title>
    <id>https://comcomponent.com/en/blog/what-is-ole-object/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/what-is-ole-object/"/>
    <published>2026-08-28T01:10:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">An OLE object is what embeds an Excel table in Word. Learn embedding vs. linking, compound files, In-Place Activation, broken links, bloat, and security.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="OLE"/>
    
    <category term="COM"/>
    
    <category term="Office"/>
    
    <category term="Access"/>
    
    <category term="Windows Development"/>
    
    <category term="Legacy Asset Reuse"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The &quot;Same PC&quot; Is Not the Same Execution Environment — The User Boundary That Separates AppData, HKCU, DPAPI, and Credentials</title>
    <id>https://comcomponent.com/en/blog/windows-user-boundary-appdata-hkcu-dpapi/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-user-boundary-appdata-hkcu-dpapi/"/>
    <published>2026-08-28T01:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Why an app that works on your desk breaks as a task or service: how the Windows user boundary separates AppData, HKCU, DPAPI, browser profiles, and credentials.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="DPAPI"/>
    
    <category term="Registry"/>
    
    <category term="AppData"/>
    
    <category term="Credentials"/>
    
    <category term="Task Scheduler"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Declarative Configuration Management for Windows with DSC — Starting IaC with dsc.exe</title>
    <id>https://comcomponent.com/en/blog/dsc-windows-declarative-iac/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/dsc-windows-declarative-iac/"/>
    <published>2026-08-28T00:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Move on from runbook scripts that break when re-run. DSC v3 (dsc.exe) declares Windows configuration in YAML and applies it idempotently, with drift detection.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="DSC"/>
    
    <category term="IaC"/>
    
    <category term="PowerShell"/>
    
    <category term="winget"/>
    
    <category term="Configuration Management"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The Depths of Windows Virtualization (Part 3) — Virtual Machines That Boot in Seconds: Why WSL2, Windows Sandbox, and Containers Are So Light</title>
    <id>https://comcomponent.com/en/blog/windows-virtualization-internals-wsl2-sandbox-containers/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-virtualization-internals-wsl2-sandbox-containers/"/>
    <published>2026-08-22T04:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Why WSL2 and Windows Sandbox boot in seconds and stay light: dynamic base images, direct map, dynamic memory allocation, and Hyper-V isolated containers explained.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Virtualization"/>
    
    <category term="WSL2"/>
    
    <category term="Windows Sandbox"/>
    
    <category term="Containers"/>
    
    <category term="Hyper-V"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The Depths of Windows Virtualization (Part 2) — Memory Even the Kernel Cannot See: How VBS, HVCI, and Credential Guard Work</title>
    <id>https://comcomponent.com/en/blog/windows-virtualization-internals-vbs-hvci-credential-guard/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-virtualization-internals-vbs-hvci-credential-guard/"/>
    <published>2026-08-22T03:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Enabled by default on a clean install to compatible hardware, VBS uses the hypervisor and SLAT to isolate beyond the kernel. Covers VTLs, the Secure Kernel, HVCI, and Credential Guard.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Virtualization"/>
    
    <category term="Security"/>
    
    <category term="VBS"/>
    
    <category term="HVCI"/>
    
    <category term="Credential Guard"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The Depths of Windows Virtualization (Part 1) — Where Is Your Windows Actually Running? The Hypervisor and Partitions</title>
    <id>https://comcomponent.com/en/blog/windows-virtualization-internals-hypervisor/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-virtualization-internals-hypervisor/"/>
    <published>2026-08-22T02:00:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">When you enable Hyper-V, the host Windows itself runs as the root partition on top of the hypervisor. This article explains the foundations of virtualization, from VT-x and SLAT to VMBus.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Virtualization"/>
    
    <category term="Hyper-V"/>
    
    <category term="Hypervisor"/>
    
    <category term="SLAT"/>
    
    <category term="VMBus"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">The Win32 Thread Pool API — Concurrency That Does Not Create Threads, with CreateThreadpoolWork</title>
    <id>https://comcomponent.com/en/blog/win32-thread-pool-api/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/win32-thread-pool-api/"/>
    <published>2026-08-22T01:40:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">Calling CreateThread everywhere in native code? A primary-source guide to the Win32 thread pool API: the work, timer, wait, and io objects, cleanup groups, and callback rules.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Multithreading"/>
    
    <category term="C++"/>
    
    <category term="Windows Development"/>
    
    <category term="Win32 API"/>
    
    <category term="Performance Improvement"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Named Pipes in Practice — Windows&apos; Standard IPC from Design to Security</title>
    <id>https://comcomponent.com/en/blog/windows-named-pipes-practical-guide/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-named-pipes-practical-guide/"/>
    <published>2026-08-22T01:30:00+00:00</published>
    <updated>2026-09-07T00:00:00+00:00</updated>
    
    <summary type="text">A practical guide to named pipes, Windows&apos; standard IPC. Covers byte vs. message mode, servers that handle multiple clients, ACL and impersonation security, and .NET&apos;s named-pipe stream classes, from primary sources.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="IPC"/>
    
    <category term="Windows Development"/>
    
    <category term="C#"/>
    
    <category term="C++"/>
    
    <category term="Security"/>
    
    <category term="Win32 API"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">Apps That Break on Resume from Sleep — How Power Events Work and How to Build Business Apps That Survive Resume</title>
    <id>https://comcomponent.com/en/blog/windows-sleep-resume-power-events/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/windows-sleep-resume-power-events/"/>
    <published>2026-08-22T01:20:00+00:00</published>
    <updated>2026-09-08T00:00:00+00:00</updated>
    
    <summary type="text">Why business apps break after a laptop resumes from sleep: WM_POWERBROADCAST notifications, Modern Standby, reconnect design, sleep suppression, and powercfg.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="Power Management"/>
    
    <category term="Windows Development"/>
    
    <category term="Business Applications"/>
    
    <category term="Device Control"/>
    
    <category term="Bug Investigation"/>
    
    <category term="Win32 API"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
  <entry xml:lang="en">
    <title type="text">DllMain and the Loader Lock — The Real Reason You Are Told to &quot;Do Nothing in DLL Initialization&quot;</title>
    <id>https://comcomponent.com/en/blog/dllmain-loader-lock/</id>
    <link rel="alternate" type="text/html" href="https://comcomponent.com/en/blog/dllmain-loader-lock/"/>
    <published>2026-08-22T01:10:00+00:00</published>
    <updated>2026-09-08T00:00:00+00:00</updated>
    
    <summary type="text">Why DllMain must not call LoadLibrary or wait on threads: the loader lock serializes DLL notifications, typical deadlocks, deferred initialization, and hang investigation.</summary>
    
    
    
    <category term="Windows"/>
    
    <category term="DLL"/>
    
    <category term="Windows Development"/>
    
    <category term="C++"/>
    
    <category term="Bug Investigation"/>
    
    <category term="Multithreading"/>
    
    <category term="Win32 API"/>
    
    
    <author>
      <name>Go Komura</name>
    </author>
  </entry>
  
</feed>
