Что такое формат файла ANI?
The .ani file is a Windows Animated Cursor - the animated counterpart to a static .cur file. Developed by Microsoft and introduced with Windows 95 in 1995, it stores a sequence of cursor frames that the operating system cycles through as a mouse pointer animation. The classic example is the spinning hourglass displayed while Windows processed a task.
Internally, .ani uses the RIFF container format - the same binary container family as .wav audio and .avi video. The file opens with the four bytes RIFF at offset 0, a little-endian file size at offset 4, and the form type ACON (ANImated CONtent) at offset 8. An anih chunk carries the animation header, storing the frame count, step count, and default display rate. Optional rate and seq chunks enable per-frame timing (in 1/60-second jiffies) and non-sequential playback order. The cursor images themselves live in a LIST of icon sub-chunks, each a complete .ico-compatible cursor frame that includes a hotspot coordinate.
Each frame supports color depths from 1-bit monochrome up to 32-bit RGBA with an 8-bit alpha channel, allowing smooth anti-aliased pointer edges. Frame dimensions are typically 32×32 or 48×48 pixels, with support up to 256×256 for high-DPI displays. There is no compression at the container level. The format is Windows-exclusive and has been structurally unchanged since the mid-1990s. To apply a custom .ani pointer, open Windows Pointer Settings in the Control Panel.
Безопасность и защита
РИСК: MEDIUMMost .ani files are harmless animated pointers, but the format has a notable security history: a Windows ANI parsing flaw (the 'anih' header) was exploited in the wild (MS05-002 in 2005 and MS07-017/CVE-2007-0038 in 2007) for remote code execution simply by loading a malicious cursor. Those specific bugs are long patched, but the lesson stands - only install cursor packs from reputable sources and keep Windows updated. A cursor from an untrusted ZIP is low-but-nonzero risk on an unpatched system.
Детали формата
в двух словахПрограммы, открывающие файлы ANI
Технические подробности
глубокая спецификация| Container format | RIFF (Resource Interchange File Format) with form type ACON (ANImated CONtent) |
| Magic bytes | 0x52 0x49 0x46 0x46 ("RIFF") at offset 0; "ACON" at offset 8 |
| Byte order | Little-endian throughout |
| Animation header chunk | "anih" chunk stores frame count, step count, default display rate, frame width/height, bit count, and flags |
| Per-frame timing | Optional "rate" chunk: one DWORD per step measured in jiffies (1/60 second each); falls back to the anih header rate if absent |
| Frame sequencing | Optional "seq" chunk allows non-sequential or repeated frame playback order independent of storage order |
| Frame storage structure | LIST chunk of "icon" sub-chunks; each sub-chunk holds a complete CUR/ICO-format cursor image |
| Color depth per frame | 1, 4, 8, 24, or 32 bits per pixel; 32 bpp includes an 8-bit alpha channel for smooth anti-aliased pointer edges |
| Hotspot | Each frame embeds a hotspot (x, y) coordinate marking the pixel that registers as the active click point |
| Frame dimensions | Typically 32x32 or 48x48 px; up to 256x256 px supported for high-DPI displays |
| Compression | None at the RIFF container level; individual frames are stored as uncompressed BMP-based CUR/ICO bitmaps |
| Typical file size | 5 KB to 200 KB depending on frame count and color depth |
| MIME type | application/x-navi-animation; also recognised as image/x-ani |
| Platform support | Windows-only natively; used directly by the Windows cursor subsystem; no built-in support on macOS or Linux |
| Выпущен | 1995 (Windows 95 - animated mouse pointers) |
| Последняя версия | Stable since the 1990s; format unchanged |
| Спецификация | learn.microsoft.com |
Конвертации ANI
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах ANI.