stringtranslate.com

Gabinete (formato de archivo)

Los archivos Cabinet (o CAB ) son un formato de archivo de almacenamiento para Microsoft Windows que admite la compresión de datos sin pérdida y certificados digitales integrados que se utilizan para mantener la integridad del archivo. Los archivos Cabinet tienen .cab extensiones de nombre de archivo y se reconocen por sus primeros cuatro bytes (también llamados su número mágico ) MSCF . Los archivos Cabinet se conocían originalmente como archivos Diamond.

Diseño

Un archivo CAB puede contener hasta 65.535 carpetas (distintas de los directorios estándar del sistema operativo), cada una de las cuales puede contener hasta 65.535 archivos para un máximo de 4.294.836.225. Internamente, cada carpeta se trata como un único bloque comprimido , lo que proporciona una compresión más eficiente que comprimir individualmente cada archivo.

Cada entrada de una carpeta debe ser un archivo. [1] Debido a esta estructura, no es posible almacenar carpetas vacías en archivos CAB.

A continuación se muestra un ejemplo de una estructura de archivo CAB, que demuestra la relación entre carpetas y archivos:

En el formato de archivo CAB no se especifica cómo deben manejarse las rutas, lo que queda en manos de la implementación del software:

El formato de archivo CAB puede emplear los siguientes algoritmos de compresión :

Un archivo CAB puede reservar espacios vacíos en el archivo, así como para cada archivo en el archivo, para algunos usos específicos de la aplicación, como firmas digitales o datos arbitrarios.

Implementaciones

Microsoft Windows permite crear archivos de archivo CAB mediante la utilidad makecab de línea de comandos . Permite extraer el contenido de un archivo CAB mediante el Explorador de archivos , la API de configuración y los comandos expand.exe de línea de comandos [10] extract.exe y [11] [12extrac32.exe ]

Otros programas conocidos que admiten archivos CAB son WinZip , WinRAR o 7-Zip . El mencionado anteriormente cabextractes una herramienta común para sistemas Linux, [13] pero solo es capaz de extraer archivos. gcabSin embargo, la herramienta puede extraer y crear archivos CAB. [14] Para obtener una lista completa, consulte Comparación de archivadores de archivos § formatos de archivo .

Usos

Una variedad de tecnologías de instalación de Microsoft utilizan el formato CAB: estas incluyen Windows Installer , Windows Setup (desde Windows 95 hasta Windows Server 2003 ), Setup API , Device Installer, Theme Pack y AdvPack (utilizado por Internet Explorer para instalar componentes ActiveX ). Los archivos CAB también suelen estar asociados con programas autoextraíbles como IExpress , donde el programa ejecutable extrae el archivo CAB asociado. Los archivos CAB también se incrustan a veces en otros archivos. Por ejemplo, los archivos MSI y MSU suelen incluir uno o más archivos CAB incrustados.

Windows utiliza el formato de archivo para archivar su registro de mantenimiento basado en componentes (CBS), que se guarda en la carpeta C:\Windows\Logs\CBS . Un error en el proceso de compresión puede provocar la generación descontrolada de archivos de registro inútiles tanto en esa carpeta como en C:\Windows\Temp , lo que puede consumir almacenamiento en disco hasta llenar por completo el disco duro. [15] [16] La eliminación de los archivos sin seguir un procedimiento específico [16] puede provocar que los archivos eliminados se regeneren a un ritmo mayor.

En los sistemas Linux , fwupd utiliza archivos CAB para distribuir actualizaciones de firmware de proveedores de hardware [17] que se pueden instalar en una memoria no volátil .

Formatos relacionados

La .cabextensión del nombre de archivo también es utilizada por otros programas de instalación (por ejemplo, InstallShield ) para sus propios formatos de archivo propietarios. InstallShield utiliza zlib para la compresión (consulte Deflate ), pero sus encabezados no son los mismos que los de los archivos CAB de Microsoft, por lo que son incompatibles y no se pueden manipular ni editar con los programas que están hechos para el formato de archivo estándar. Las utilidades especializadas de terceros, como Unshield, pueden extraer este formato propietario específico. [18] Este formato tiene un número mágico diferente de ISC ( . [19]

El software de Windows CE se distribuye como archivos CAB donde el primer archivo, que termina con la extensión ".000", detalla cómo se instala. [20]

Los archivos de Microsoft Installer .msi a veces contienen archivos CAB, pero están en formato binario de archivo compuesto , que primero debe decodificarse. lessmsiSe puede utilizar un software como para descomprimir estos archivos.

Microsoft Publisher tiene una función "Pack and Go" que agrupa un documento de Publisher, junto con todos los vínculos externos, en un archivo CAB con una .PUZextensión. Estos archivos están pensados ​​para activarse con un archivo .EXE complementario que se distribuye junto con el .PUZarchivo. Estos archivos se pueden abrir con cualquier programa de extracción de archivos CAB.

Véase también

Referencias

  1. ^ Formato de gabinete de Microsoft
  2. ^ "Microsoft Cabinet Software Development Kit". Soporte . Microsoft . Consultado el 27 de marzo de 2013 .
  3. ^ "lcab". Freecode . Dice . Consultado el 27 de marzo de 2013 .
  4. ^ "extracto de cab".
  5. ^ "[Sin documentar] [Errores] Expand.exe (más información) (Página 1) / Windows CMD Shell / Foro SS64". ss64.org . Consultado el 21 de abril de 2018 .
  6. ^ "[MS-MCI]: Estructura de datos de compresión y descompresión de Microsoft ZIP (MSZIP)". docs.microsoft.com . 13 de octubre de 2020.
  7. ^ Salomon, D. (David) (2007). Compresión de datos: la referencia completa. Biblioteca Genesis. Londres: Springer. pág. 187. ISBN 978-1-84628-602-5.
  8. ^ "Formato de compresión cuántica". Matthew Russotto . Archivado desde el original el 11 de mayo de 2021. Consultado el 29 de marzo de 2022 .
  9. ^ "Cabinet File Format – Open Specification Documentation" (PDF) . Microsoft Corporation. 4 de marzo de 2011. Archivado (PDF) desde el original el 18 de noviembre de 2016 . Consultado el 15 de febrero de 2023 .
  10. ^ expandir – CMD de Windows – SS64.com
  11. ^ Cómo extraer un archivo CAB usando herramientas de línea de comandos en Windows 10
  12. ^ Extrac32 – Descomprimir archivos – CMD de Windows – SS64.com
  13. ^ Cómo extraer archivos CAB en Linux [ enlace muerto permanente ]
  14. ^ Proyecto gcab en GNOME
  15. ^ "Limpiar registros de mantenimiento basados ​​en componentes". Microsoft TechNet . 7 de julio de 2017.
  16. ^ de Leonhard, Woody (25 de agosto de 2016). «El error de compresión de archivos de registro de Windows 7 puede llenar el disco duro». Computerworld . Archivado desde el original el 8 de enero de 2019. Consultado el 8 de enero de 2019 .
  17. ^ "LVFS: proveedores de hardware". Proyecto de servicio de firmware de proveedores de Linux . Consultado el 3 de mayo de 2022 .
  18. ^ "twogood/unshield". GitHub . Consultado el 21 de abril de 2018 .
  19. ^ "kyz/libmspack: doc/magic". GitHub . 2 de enero de 2022.
  20. ^ "Formato de archivo de gabinete de instalación de Windows CE (.CAB)". cabextract .

Enlaces externos