ブログ
ホームページ制作、SEO対策、Google広告運用、Windows開発、既存資産活用、不具合調査について、実務で役立つ考え方を発信します。
サイト内AI検索
検索キーワードは結果生成のため Cloudflare AI Search に送信されます。個人情報は入力しないでください。
-
DITAとは?構造化文書と再利用の基本
DITAは情報の役割をXMLで表し、文書を組み立てて再利用するための標準です。トピック、マップ、既存の文書型、KCSとの分担、Markdownへの変換と注意点を具体例で解説します。
-
MS14-068で普通のユーザーが管理者になれた理由 ── KerberosのPACと署名検証
MS14-068(CVE-2014-6324)では、一般ユーザーが偽ったグループ情報をKDCが受け入れ、ドメイン管理者として扱われ得ました。PAC、鍵付き署名とチェックサムの違い、権限への反映、修正と検知の限界を解説します。
-
CurveBall――偽の証明書を、なぜWindowsが信頼してしまったのか? ── CryptoAPIと楕円曲線のパラメーター
CurveBall(CVE-2020-0601)は、偽の証明書を信頼された認証局のものと取り違えるWindowsの脆弱性でした。公開鍵の点と基準点の関係から、署名の計算が正しくても信頼の判定が崩れる理由を解説します。
-
C#からSTAのCOMを使う専用ワーカーの作り方 ── 生成・呼び出し・イベント・終了を一か所で管理する
UIから呼ぶと固まるSTAのCOMを、専用スレッドへまとめる実装例です。Dispatcherと実行キュー、イベントのUI通知、終了中の要求と解放順を、C#と小さなネイティブCOMのサンプルで確認します。
-
PrintNightmareはなぜSYSTEM権限を奪えたのか? ── 印刷スプーラーとドライバー導入の境界
PrintNightmare(CVE-2021-34527)は、印刷スプーラーのドライバー導入機能からSYSTEM権限のコード実行に至る脆弱性でした。通常の印刷との違い、DLLが実行される過程、Point and Printとの関係、2021年の対策を解説します。
-
Zerologonはなぜ認証を突破できたのか? ── Netlogonでゼロが正解になった理由
Zerologon(CVE-2020-1472)では、パスワードを知らない相手がコンピューターになりすませました。AES-CFB8の計算を1バイトずつ追い、ゼロが認証の正解になる理由と、ドメイン全体に被害が広がる仕組みを解説します。
-
PowerShellで、PowerShellの解析ツールを作る ── AST・代入追跡・定数伝播でスクリプトを読む
PowerShellのASTでコマンド呼び出しを探し、変数代入と文字列の定数伝播を追跡するツールを作ります。直接・変数から解決・未解決を区別し、分岐や副作用で分からなくなる条件も解説します。
-
Windowsのショートカットは、移動したファイルをどうやって見つけるのか? ── ファイルの「場所」と「同じファイルであること」は別の話
Windowsのショートカットが、移動・改名したファイルを探す仕組みを解説します。パス・Object ID・特徴による探索の違い、コピーや元のパスの再利用で保証されないこと、安全な確認手順とAPIの使い分けを整理します。
-
USBメモリの「安全な取り外し」は、今も必要なのか? ── 「クイック取り外し」と書き込みキャッシュから考える
USBの安全な取り外しが必要かを、クイック取り外しと高パフォーマンスの違いから判断します。書き込みキャッシュの仕組み、設定確認、取り外しの手順、「使用中」で外せない場合の対処と完了確認を説明します。
-
CPU使用率は低いのに音が途切れるのはなぜ? ── バッファと締め切りから考える
CPU使用率は低いのに音が途切れる理由を、バッファと補充の締め切りから説明します。対象環境、条件を一つずつ変える手順、WPR・WPAによる記録と確認、改善を原因の確定と混同しない判断基準をまとめます。
-
回線は速いのにRDPが重いのはなぜ? ── 入力・描画・通信を分けて調べる
回線は速いのにRDPの入力やスクロールが遅いときの切り分け手順です。入力待ち・画面処理・通信を区別し、症状別の比較、性能カウンターの測定範囲、設定を戻した確認、調査の引き継ぎを説明します。
-
ネットは使えるのに「インターネットなし」?── WindowsのNCSI・DNS・プロキシ・VPNを切り分ける
ネットは使えるのにWindowsが「インターネットなし」と表示する理由を、NCSIの接続判定から解説します。DNS・プロキシ・VPN・認証Wi-Fiを、設定変更前の確認コマンドとイベントログで切り分けます。
-
「残り1秒」が終わらないのはなぜ? ── 進捗バーと残り時間の仕組み
残り1秒が長い、99%で止まる、準備中から進まない。その理由を、進捗率の分母、速度の予測、最後の処理、画面更新に分けて解説します。同じ処理を異なる表示で比べるデモ付きです。
-
共有フォルダにつながったり、つながらなかったりする理由 ── Kerberos・NTLM・資格情報を切り分ける
共有フォルダの接続失敗を、通信・実行主体・認証と保護・権限に分けて診断します。名前とIP、1219、空パスワード、SMB署名、再起動で変わる状態を、記録採取・操作手順・結果の確認に沿って説明します。
-
ディスク使用率100%は何を止めれば直る?── SysMain・Windows Search・Defenderの見分け方
Windowsのディスク使用率が100%になる原因を、処理量・応答時間・ファイルから切り分けます。SysMainの一時停止と復帰、Windows Searchの検索範囲の見直し、Defenderを無効化しない調査方法を図解します。
-
同じ1GBなのに、動画1本より写真フォルダーのコピーが遅いのはなぜ?
Windowsで同じ容量なのにコピー時間が違う理由を図解します。ファイル数、SSDとNASの待ち時間、ZIPにまとめる効果、作成・転送・展開を含めた比較手順、robocopyの使いどころを整理します。
-
Windowsの「ハードウェアアクセラレータによるGPUスケジューリング」とは? オンにすると速くなる?
WindowsのハードウェアアクセラレータによるGPUスケジューリング(HAGS)を、一般ユーザー向けに図解します。仕組み、オン・オフの判断、設定が表示されない理由、フレーム生成との関係、安全な比較手順を整理します。
-
Windowsの名前解決の順序 ── hosts・DNSキャッシュ・LLMNR/mDNS・DoH
「名前解決できない」「一部のPCだけ繋がらない」は、hosts・DNSキャッシュ・DNSサーバー・LLMNR/mDNSのどの層が答えたかで結果が変わります。Windowsの名前解決の順序とDoHが変えるものを仕組みから整理し、層ごとに切り分ける手順を解説します。
-
メモリ整合性(HVCI)をオフにすると速くなるのか ── 意味と手順と判断
Windowsセキュリティの「コア分離」にあるメモリ整合性(HVCI)は何をしていて、オフにすると本当に速くなるのか。速くなり得る条件と変わらない条件、オフにする手順と戻し方、オフになったかの確認方法、オフにしてよい判断基準を入門向けに整理します。
-
高速スタートアップの正体 ── 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分離コンテナーまで仕組みから解説します。