ブログ
ホームページ制作、SEO対策、Google広告運用、Windows開発、既存資産活用、不具合調査について、実務で役立つ考え方を発信します。
サイト内AI検索
検索キーワードは結果生成のため Cloudflare AI Search に送信されます。個人情報は入力しないでください。
-
高速スタートアップの正体 ── Windowsの「シャットダウン」が再起動と違う理由
Windowsの「シャットダウン」は既定でハイブリッドシャットダウンになり、カーネルとドライバーは休止ファイルへ保存され次回起動で復元されます。再起動でしか直らない理由、稼働時間・更新・Wake on LANへの影響、確認方法と無効化の判断を解説します。
-
Time Travel Debugging ── 長期稼働で再現しない不具合を「録画」して巻き戻す
月に一度しか出ない不具合は、クラッシュダンプでは結果しか写りません。WinDbgのTime Travel Debugging(TTD)で実行を録画して巻き戻す方法を、TTD.exeの録画設計、リングバッファ、TTD.Callsクエリ、ダンプとの使い分けまで解説します。
-
引数はなぜ壊れるか ── Windowsのコマンドライン引数の規則
Windowsでは引数の配列は存在せず、CreateProcessに渡るのは1本の文字列で、分割は受け取り側が行います。CommandLineToArgvW・CRT・.NETの分割規則と、.NETのArgumentList・C++での正しい組み立て方を解説します。
-
Windowsアプリのダークモードとコントラストテーマ対応 ── DWMのダークタイトルバー、WinForms/WPFのシステムテーマ追従、ハイコントラスト時の描画
Windows 11のダークモードとコントラストテーマにWinForms/WPFアプリを追従させる方法を解説。DWMのダークタイトルバー、.NET 9/10のSetColorModeとThemeMode、テーマ切替の検知、ハイコントラスト時のシステムカラー描画を整理します。
-
Windowsのプリンタードライバー終了 ── 業務アプリの帳票・ラベル印刷はどう備えるか
Microsoftはv3/v4プリンタードライバーの提供終了を段階的に進めており、2026年7月からはIPPクラスドライバーが優先されます。Windows protected print modeで何が消えるか、業務アプリの帳票・ラベル印刷の依存箇所の棚卸しと備え方を判断表で整理します。
-
WinRTはCOMである ── IInspectable・.winmd・言語プロジェクション、そしてWinUIが今もバイナリ契約の上に乗っている理由
WinRTはマネージドランタイムではなく、COMにメタデータ(.winmd)と言語プロジェクションを足したABIです。IUnknownとIInspectableの関係から、デスクトップアプリでのHWND初期化やpackage identityの詰まりどころまで解説します。
-
親が落ちたあとに何が残るか ── Job Objectで子プロセスを飼う
UIを強制終了してもSDKのヘルパーが残り、カメラやCOMポートを握ったままになるのはなぜか。Job Objectでプロセスツリーを一つの単位にし、KillOnJobCloseと完了ポートで子プロセスの寿命を設計する方法を計測アプリ目線で解説します。
-
OLEオブジェクトとは何か ── 埋め込み・リンクの仕組みと業務文書の落とし穴
WordにExcelの表を埋め込む機能の正体がOLEオブジェクトです。埋め込みとリンクの違い、複合ファイルと構造化ストレージ、In-Place Activationの仕組みから、リンク切れ・肥大化・セキュリティ対策まで実務目線で解説します。
-
「同じPC」は同じ実行環境ではない ── AppData・HKCU・DPAPI・資格情報を隔てるユーザー境界
手元で動くアプリがタスク化・サービス化した途端に壊れるのはなぜか。AppData・HKCU・DPAPI・ブラウザプロファイル・資格情報を隔てるWindowsのユーザー境界を仕組みから解説します。
-
DSCでWindowsを宣言的に構成管理する ── dsc.exeで始めるIaC
「もう一度実行すると壊れる」手順書スクリプトから卒業しませんか。Windowsの構成をYAMLで宣言し冪等に適用するDSC v3(dsc.exe)を、4世代あるDSCの整理から構成ドキュメントの書き方、ドリフト検出の運用まで解説します。
-
Windows仮想化の深層(第3回) ── 数秒で起動する仮想マシン:WSL2・Windows Sandbox・コンテナーの軽さの正体
WSL2やWindows Sandboxが数秒で起動して軽いのはなぜか。動的ベースイメージ、ダイレクトマップ、メモリの動的配分、Hyper-V分離コンテナーまで仕組みから解説します。
-
Windows仮想化の深層(第2回) ── カーネルからも見えないメモリ:VBS・HVCI・Credential Guardの仕組み
対応ハードウェアへのクリーンインストールで既定有効になるVBSは、ハイパーバイザーとSLATでカーネルより強い隔離を作ります。VTL、セキュアカーネル、HVCI、Credential Guardの構造を解説します。
-
Windows仮想化の深層(第1回) ── あなたのWindowsはどこで動いているのか:ハイパーバイザーとパーティション
Hyper-Vを有効にするとホストのWindows自体がルートパーティションとしてハイパーバイザーの上で動きます。VT-x、SLAT、VMBusの役割まで、仮想化の土台を解説します。
-
Win32スレッドプールAPI ── CreateThreadpoolWorkで「スレッドを作らない」並行処理
ネイティブコードでCreateThreadを乱立させていませんか。Vistaで刷新されたWin32スレッドプールAPIのwork・timer・wait・ioの4オブジェクト、クリーンアップグループ、コールバックでの禁止事項までを一次情報にもとづいて解説します。
-
名前付きパイプの実務 ── Windowsプロセス間通信の定番を設計からセキュリティまで
Windowsのプロセス間通信の定番・名前付きパイプを実務目線で解説します。バイト/メッセージモードの選択、複数クライアントを捌くサーバー設計、ACLと偽装のセキュリティ、.NETのNamedPipeStreamまで、一次情報にもとづき整理します。
-
スリープ復帰で壊れるアプリ ── 電源イベントの仕組みと復帰に強い業務アプリの作り方
ノートPCを開いたら業務アプリの通信が切れていた――原因はスリープを想定しない設計です。WM_POWERBROADCASTによる通知の流れ、Modern Standbyの挙動、切断・再接続の設計、スリープ抑止と調査コマンドまでを一次情報で解説します。
-
DllMainとローダーロック ── 「DLLの初期化で何もするな」と言われる本当の理由
DllMainでLoadLibraryやスレッド同期をしてはいけないのはなぜか。全DLL通知を直列化するローダーロックの仕組みから、デッドロックが成立する典型シナリオ、遅延初期化などの正しい設計、ハング調査の手順までを一次情報で解説します。
-
「応答なし」の正体 ── Windowsがアプリを「固まった」と判定する仕組みと、固まらない設計
Windowsの「応答なし」は、ウィンドウが5秒間メッセージを取り出さないとOSが判定し、幽霊ウィンドウに差し替える仕組みです。判定の内部動作から、固まる定番原因、UIスレッドから重い処理を追い出す設計、ハングの調査手順まで解説します。
-
スプリアスウェイクアップ ── 条件変数が「通知なしに目覚める」理由とWindowsでの正しい待ち方
条件変数のwaitは通知が来ていなくても目覚めることがあります(スプリアスウェイクアップ)。仕様がそれを許す理由をWindowsの実装から解き明かし、whileと述語で書く正しい待ち方をWin32・C++・C#のコードで示します。
-
クリップボードとドラッグ&ドロップの仕組み ── OLEデータ転送を業務アプリで正しく扱う
Excelの表を貼ると崩れる・コピー元を閉じると貼れない――正体は同じ内容を複数形式で置くクリップボードの仕組みです。標準形式・遅延レンダリング・OLEドラッグ&ドロップから履歴とクラウド同期のポリシーまで解説します。
-
WPR/WPA実践 ── 「PC全体が重い」をシステム全体から調べる性能調査入門
「PC全体が重い」「起動が遅い」など、タスクマネージャーでは追えない性能問題は、OS全体のETWトレースを採って読むWPR/WPAで調べられます。wpr.exeでの採取手順から、WPAでのCPU・待ち時間・ディスクI/Oの読み方まで解説します。
-
アプリから見たWindowsのシャットダウン ── 終了通知・再起動・電源断を正しく生き延びる
Windows Updateの夜間再起動で計測データが壊れた――そんな事故は設計で防げます。WM_QUERYENDSESSIONやPRESHUTDOWNによる終了通知の受け方、数秒で終える後始末、電源断に耐える保存設計までを一次情報で解説します。
-
Windowsアプリのアクセシビリティ入門 ── UI Automationと合理的配慮の義務化に備える
2024年4月施行の改正障害者差別解消法を背景に、スクリーンリーダーがWindowsアプリを読む仕組みUI Automationを軸として、WinForms/WPFでの名前付け、キーボード操作、コントラスト、検証ツールまで実務目線で整理します。
-
日本語フォントと文字の落とし穴 ── JIS2004・異体字セレクタ・外字を業務アプリでどう扱うか
「画面と帳票で葛の字の形が違う」「氏名の字が出ない」──業務システムの文字トラブルは、文字コード(データ)とフォント(見た目)の層を分ければ整理できます。JIS2004の字形変更、異体字セレクタ、外字の実務対応を解説します。
-
グループポリシーからIntuneへ ── 中小企業のデバイス管理移行ガイド
ADサーバーの更改を機にグループポリシーを続けるか、Entra ID+Intuneへ移るか。適用の仕組みの違い、ライセンス、Group Policy analyticsでの棚卸し、5段階の移行シナリオとつまずきどころを中小企業向けに整理します。
-
Windowsサービスのアカウント選定 ── LocalSystem・仮想アカウント・gMSAの使い分け
WindowsサービスをLocalSystemで動かし続けていませんか。LocalService・NetworkService・仮想アカウント・ドメインユーザー・gMSAの権限とネットワーク上の身元を判断表で比較し、最小権限で運用する選び方を解説します。
-
OneDrive「ファイル オンデマンド」と業務アプリ ── プレースホルダーが壊す前提と対策
デスクトップのCSVが読めない、取込処理が「ファイルが見つかりません」で落ちる――原因はOneDriveのKFMとファイル オンデマンドかもしれません。プレースホルダーの仕組みと属性判定、アプリ・情シス双方の対策を解説します。
-
Windowsアプリ互換の仕組み ── 互換モード・シム・Compatibility Administratorで古いアプリを延命する
互換モードにチェックを入れると古いアプリが動くのはなぜか。正体であるシム(APIフック)の仕組み、代表的なシムの機能、Compatibility Administratorとsdbinstによる組織展開、効かない限界、延命か移行かの判断までを解説します。
-
Windowsメモリの深層(第3回) ── セクションオブジェクトとコピーオンライト:DLLとファイルマッピングの正体
セクションオブジェクト、イメージ/データマッピング、共有キャッシュ、コピーオンライトをつなぎ、DLLや共有メモリが物理ページを共有する仕組みを解説します。
-
Windowsシェル統合の今 ── 右クリックメニュー・ファイル関連付け・Windows 11の変化
Windows 11で右クリックメニューが「その他のオプションを確認」に隠れる理由を、拡張子→ProgID→verbという関連付けの基本、従来型シェル拡張の注意点、IExplorerCommandとMSIX/sparse packageの新方式まで整理して解説します。