Windows カーソル (.cur)

Microsoft 標準

Windows Cursor Resource (CUR) は、Microsoft Windows のネイティブなマウス ポインタ形式であり、コンテナ アーキテクチャの点では ICO と同一ですが、正確なホットスポットの座標オフセットを指定する点が異なります。

調査とメタデータ

オペレーティングシステムやファイル解析ツールは、先頭のバイナリバイトシーケンスを検査することで CUR ファイルを識別します:

ここにファイルを選択またはドロップ

100%プライベートなブラウザ内変換 - ファイルがデバイスから外部に出ることはありません

または貼り付け Ctrl+V
ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

バイトレベルのヘッダーシグネチャ (マジックバイト)

オペレーティングシステムやファイル解析ツールは、先頭のバイナリバイトシーケンスを検査することで CUR ファイルを識別します:

16進数シグネチャ (オフセット 0):

00 00 02 00

ASCII表現: ....

標準化: Microsoft Windows Resource Specification

技術仕様

コンテナアーキテクチャICONDIR header with resource type 2 (Cursor) followed by ICONDIRENTRY array and DIB data
圧縮Uncompressed DIB or PNG compressed streams (Windows Vista+)
バイトエンディアンLittle-Endian (Intel x86)
色空間Device RGB
チャンネルと構造1-bit monochrome mask, 4-bit, 8-bit, or 32-bit BGRA with alpha
最大寸法Typically 32 x 32, 48 x 48, or 64 x 64 (supports up to 256 x 256 in modern Windows)
透過性XOR/AND binary mask or 8-bit smooth alpha channel
ストリーミングとプログレッシブNon-streamable desktop icon/cursor directory

技術比較マトリックス: CUR 対 競合製品

技術属性CUR (現在)ICOPNGSVG
ホットスポットの定義埋め込みの X/Y ピクセル座標なし(中央/左上がデフォルト)CSS で定義SVG ビューボックスで定義
リソース タイプ ID0x0002 (カーソル)0x0001 (アイコン)標準画像ベクター XML
オペレーティング システムネイティブ Windows マウス サブシステムWindows シェル / ブラウザ ファビコンユニバーサル Web およびアプリユニバーサル ベクター
スケーラビリティ固定されたマルチ解像度ミップマップ固定されたマルチ解像度ミップマップラスター固定サイズ無限ベクター スケーリング

一般的な破損モードと16進数リカバリガイド

カーソル矢印の先端から数ピクセル離れた場所でマウスクリックが認識される。

根本原因: ICONDIRENTRY テーブル内のホットスポット X/Y 座標が破損しているか欠落している。

復旧: File2File Cursor Converter でカーソルを再作成し、ホットスポット座標を視覚的に再調整する。

セキュリティ分析とパーサー攻撃ベクトル

Windows グラフィックス デバイス インターフェイス (GDI) における CUR の解析バグにより、細工されたヘッダー寸法を介した任意のコード実行が歴史的に可能になっていました。

既知の攻撃ベクター

  • レガシーなカーソル デコーダーでの DIB カラー マスクの割り当て中の整数オーバーフロー。
  • カーソルの転送(ブリッティング)中に、破損したホットスポット オフセットが境界外ポインタ読み取りを引き起こす。
  • 近代的な CUR ファイル内の埋め込み PNG ストリームを解析する際のヒープ破損。

防御的ベストプラクティス:

歴史的背景とマイルストーン

2006Windows Vista が CUR 内に PNG 圧縮ペイロードを持つ 256x256 高DPI カーソルを導入。
2001Windows XP がカーソル ファイルにおける 32 ビットの滑らかなアルファブレンド付きドロップシャドウのサポートを追加。
1990Windows 3.0 が CUR をネイティブなハードウェアおよびソフトウェア カーソル形式として標準化。

主な利点とメリット

  • 画面上でマウスクリックが物理的に認識される正確なピクセル ホットスポット座標 (X, Y) を定義します。
  • 標準モニターおよび高DPI の 4K モニターの両方でシャープな表示を実現する、マルチ解像度のカーソル定義を可能にします。
  • サードパーティ製のポインタ ドライバなしで、Windows において直接オペレーティング システムのネイティブ サポートを受けられます。

技術的な制限とデメリット

  • Windows 中心の形式であり、モバイル デバイスや非 Windows ブラウザではネイティブ表示のサポートが不十分です。
  • 静的ポインタ専用であり、アニメーション カーソルにはマルチフレームの .ANI コンテナが必要です。
  • レガシーな 1 ビット XOR マスクは、現代のカラー インターフェイス上で強烈な反転アーティファクトを発生させます。

興味深い技術トリビア

  • ICO ファイルと CUR ファイルの唯一の構造的違いはヘッダーの 3 バイト目です。アイコンの場合は 1、カーソルの場合は 2 になります。
  • ICO ファイルでは各エントリの 4 バイト目と 6 バイト目がカラー プレーンとピクセルあたりのビット数を表しますが、CUR ファイルでは、まさにそのバイトがホットスポットの X および Y 座標を表します。
  • CSS は .cur ファイルを指す URL を使用して、カスタム Web カーソルを直接サポートしています。

よくある技術的な質問

カーソルのホットスポットとは何ですか?

ホットスポットとは、クリックイベントが発生するカーソル画像内の正確なピクセル座標(矢印の先端や十字の中心など)のことです。

画像(PNG/JPG)を CUR ファイルに変換できますか?

はい。File2File.app を使用すると、標準的な PNG や JPG ファイルを、カスタムのホットスポット位置を指定した Windows の .CUR カーソルファイルに変換できます。

ウェブサイトで .cur ファイルを使用する方法を教えてください。

CSS で次のように記述することで、カスタムカーソルを適用できます: cursor: url('my-cursor.cur'), auto;