Curseur Windows (.cur)
Spécification StandardLe format de ressource de curseur Windows (CUR) est le format de pointeur de souris natif de Microsoft Windows, identique dans son architecture de conteneur à l'ICO mais spécifiant des décalages de coordonnées de point chaud exacts.
Inspecter et métadonnées
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers CUR en inspectant la séquence d'octets binaires de tête :
Signature d'en-tête au niveau des octets (Magic Bytes)
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers CUR en inspectant la séquence d'octets binaires de tête :
SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :
00 00 02 00REPRÉSENTATION ASCII : ....
Normalisation : Spécification de Ressource Microsoft Windows
Spécifications techniques
| Architecture de conteneur | En-tête ICONDIR avec type de ressource 2 (Curseur) suivi d'un tableau ICONDIRENTRY et de données DIB |
| Compression | Flux compressés DIB non compressés ou PNG (Windows Vista+) |
| Boutisme des octets | Little-Endian (Intel x86) |
| Espaces colorimétriques | RVB du périphérique |
| Canaux et structure | Masque monochrome 1-bit, 4-bit, 8-bit ou BGRA 32-bit avec alpha |
| Dimensions maximales | Généralement 32 x 32, 48 x 48 ou 64 x 64 (prend en charge jusqu'à 256 x 256 dans les versions modernes de Windows) |
| Transparence | Masque binaire XOR/AND ou canal alpha fluide 8-bit |
| Streaming et progressif | Répertoire d'icônes/curseurs de bureau non diffusable en continu |
Matrice de comparaison technique : CUR vs Concurrents
| Attribut technique | CUR (Actuel) | ICO | PNG | SVG |
|---|---|---|---|---|
| Définition du point chaud | Coordonnées de pixels X/Y intégrées | Aucune (centre/haut-gauche par défaut) | Défini en CSS | Défini dans la vue SVG |
| ID de type de ressource | 0x0002 (Curseur) | 0x0001 (Icône) | Image standard | XML vectoriel |
| Système d'exploitation | Sous-système de souris natif Windows | Shell Windows / Favicon de navigateur | Web et applications universels | Vecteur universel |
| Évolutivité | Mipmaps multi-résolutions fixes | Mipmaps multi-résolutions fixes | Taille fixe raster | Mise à l'échelle vectorielle infinie |
Modes de corruption courants et guide de récupération hexadécimale
Le clic de souris s'enregistre à plusieurs pixels de la pointe de la flèche du curseur.
Cause racine: Coordonnées X/Y du point chaud corrompues ou manquantes dans la table ICONDIRENTRY.
Récupération: Rééditer le curseur dans le convertisseur de curseurs File2File pour recalibrer visuellement la coordonnée du point chaud.
Analyse de sécurité et vecteurs d'attaque de l'analyseur
Les bogues d'analyse CUR dans l'interface de périphérique graphique (GDI) de Windows ont historiquement permis l'exécution de code arbitraire via des dimensions d'en-tête forgées.
Vecteurs d'attaque connus
- Dépassement d'entier lors de l'allocation des masques de couleur DIB dans les décodeurs de curseurs hérités.
- Décalages de points chauds corrompus déclenchant des lectures de pointeur hors limites lors du blitting du curseur.
- Corruption du tas lors de l'analyse de flux PNG intégrés dans des fichiers CUR modernes.
Bonnes pratiques de défense: Valider que les coordonnées du point chaud sont strictement dans les limites des dimensions de l'image (0 <= X < Largeur, 0 <= Y < Hauteur).
Origines historiques et jalons
Principaux avantages
- Définit les coordonnées exactes du pixel du point chaud (X, Y) où les clics de souris s'enregistrent physiquement à l'écran.
- Permet des définitions de curseurs multi-résolutions pour un affichage net sur les moniteurs standard et 4K haute résolution.
- Prise en charge directe et native par le système d'exploitation Windows sans pilotes de pointeur tiers.
Limites techniques
- Format centré sur Windows avec une prise en charge médiocre de l'affichage natif sur les appareils mobiles et les navigateurs non-Windows.
- Pointeur statique uniquement ; les curseurs animés nécessitent le conteneur multi-images .ANI.
- Les masques XOR 1-bit hérités produisent des artéfacts d'inversion brutaux sur les interfaces couleur modernes.
Anecdotes techniques
- La seule différence structurelle entre un fichier ICO et un fichier CUR est l'octet 3 de l'en-tête : 1 pour Icône, 2 pour Curseur.
- Dans un fichier ICO, les octets 4 et 6 de chaque entrée représentent les plans de couleur et les bits par pixel ; dans un fichier CUR, ces octets exacts représentent les coordonnées X et Y du point chaud.
- CSS prend en charge les curseurs web personnalisés directement à l'aide d'URL pointant vers des fichiers .cur.
Foire aux questions techniques
Qu'est-ce qu'un point chaud de curseur ?
Un point chaud est la coordonnée exacte du pixel à l'intérieur de l'image du curseur (telle que la pointe d'une flèche ou le centre d'un réticule) où les événements de clic se produisent.
Puis-je convertir une image (PNG/JPG) en fichier CUR ?
Oui. File2File.app vous permet de convertir des fichiers PNG ou JPG standard en fichiers de curseur Windows .CUR avec un placement de point chaud personnalisé.
Comment puis-je utiliser un fichier .cur sur mon site Web ?
Vous pouvez appliquer des curseurs personnalisés en CSS en utilisant : cursor: url('mon-curseur.cur'), auto;