Tiny Online Tools logoTiny Online Toolssearchツールを検索…grid_viewすべてのツール
ホームchevron_rightドキュメントツールchevron_rightCHM ビューアーCHM ビューアー

CHM ビューアー

Microsoft の旧式コンパイル済み HTML ヘルプを開き、目次ツリーをたどってページをブラウザーで読めます。

upload_file

クリックして選択 またはここにファイルをドラッグ&ドロップ

CHM

対応形式: .chm

関連ツール

CHM 抽出ツール

CHM 抽出ツール

コンパイル済み HTML ヘルプをページ・スタイルシート・画像に展開し、元のフォルダー構造を保った ZIP として取り出せます。

XPS / OXPS ビューアー

XPS / OXPS ビューアー

Microsoft の固定レイアウト文書 XPS・OXPS を開き、Windows のコンポーネントなしでページ単位に読めます。

MHTML / MHT ビューアー

MHTML / MHT ビューアー

MHT・MHTML の一枚のファイルに保存されたウェブページを開き、画像やスタイルシートごと再現表示します。

メールファイルビューアー

メールファイルビューアー

EML と Outlook MSG をブラウザーで開きます。ヘッダー、描画された本文、MIME 構造、添付ファイルまで、メールソフトなしで確認できます。

PDF 分割

PDF 分割

PDF ファイルを個別ページまたはページ範囲に分割します。

HTMLテーブル生成

HTMLテーブル生成

単純なカンマ区切りの行から HTML テーブルのマークアップを生成します。

JSONキーエクストラクター

JSONキーエクストラクター

オブジェクトの JSON 配列にどのキーを含めるか、またはそこから除外するキーを選択します。

apps

もっと見る

無料オンラインツールの全コレクションを見る。

CHM の正体

.chm は小さなファイルシステムです。Microsoft はこれを ITSS と呼びました。ヘッダー、エントリーのディレクトリ、そして一つか二つのコンテンツセクション — セクション 0 はそのまま格納、セクション 1 は LZX で圧縮されています。中身はごく普通の HTML ページ、スタイルシート、画像に加えて、名前が # や $ で始まるメタデータストリームがいくつか入っています。

そのうち二つが重要です。#SYSTEM はヘルプのタイトルと既定トピック — ビューアーが最初に開くべきページ — を記録しています。これがないと読み手は推測するしかなく、アルファベット順に推測するとたいていスタイルシートに行き着きます。.hhc は目次ツリーで、入れ子の <UL> と <LI> の中に <OBJECT type="text/sitemap"> を置いた HTML サイトマップとして書かれています。

実在の .hhc は不正な HTML であることで有名で、閉じられていないリスト項目だらけです。そこでブラウザー自身の HTML パーサーで解析します。当時のヘルプビューアーと同じように回復してくれるからです。XML パーサーならファイルごと拒否するでしょう。

ページを読む

各ページのスタイルシートと画像は、そのページ自身のヘルプ内パスを基準に解決し、CHM 自身のバイト列に置き換えます。トピック間のリンクも動きます。ページは同一オリジンだが allow-scripts のない iframe に表示されるので中の何も実行されず、一方でツール側はクリックを横取りしてリンク先トピックへ移動できます。外部のウェブを指すリンクはたどりません。挿入された default-src 'none' により、うっかり取得されることもありません。

圧縮について、率直に

このツールはファイルが使っている方式を報告します。LZX ならウィンドウサイズとリセットブロック数、すべてが格納セクションにあるなら「なし」です。

ここで使っている LZX デコーダーは、[MS-PATCH] 仕様と libmspack の lzxd.c をもとに書かれています。ビットストリーム読み取り、正準ハフマン復号、非圧縮ブロック、x86 フィルターにはユニットテストがあります。しかし verbatim・aligned ブロックの復号は、Microsoft 自身の圧縮器が作ったファイルに対して一度も動かしたことがありません。オフラインで試せる資料がなかったためです。

ですからページの展開に失敗した場合、このツールは具体的なエラーを表示し、何も描画しません。復元されたバイト列を画面に出すことはしません。ページのように見えるノイズは、正直な失敗より悪いのです。区別がつかないからです。実在のヘルプファイルでここが失敗したなら報告する価値があります。悪いのはこちらです。

そのほか

各ページのサイズと所属セクション、ファイルを作ったコンパイラー、ITSS ディレクトリの詳細。読むのではなく中身を取り出したい場合は CHM 抽出ツールをどうぞ。

プライバシー

ヘルプファイルはブラウザー内で開かれ、アップロードされることはありません。