¿Qué es el formato de archivo VSIX?
.vsix es el formato de paquete instalador para las extensiones de Visual Studio. Introducido con Visual Studio 2010, reemplazó al antiguo modelo de instalación de extensiones .vsi y .msi. El formato sigue vigente hasta Visual Studio 2022.
Estructuralmente, un archivo .vsix es un archivo de Open Packaging Conventions - esencialmente un ZIP - que contiene un descriptor de metadatos extension.vsixmanifest, un manifiesto OPC [Content_Types].xml y la carga útil de la extensión: ensamblados .dll compilados, componentes MEF, archivos de tabla de comandos .vsct, fragmentos de código (snippets) y plantillas.
El extension.vsixmanifest declara el ID de la extensión, la versión, el nombre para mostrar y los rangos de InstallationTarget que especifican qué versiones y SKU de Visual Studio admite la extensión. Existen dos versiones del esquema del manifiesto: v1 (VS 2010-2011) y v2 (VS 2012 y posteriores, actual).
Al hacer doble clic en un .vsix en Windows se inicia VSIXInstaller.exe, incluido con Visual Studio, que valida e instala la extensión. Las extensiones también se publican y descubren a través de Visual Studio Marketplace en marketplace.visualstudio.com.
Visual Studio Code también utiliza paquetes .vsix para sus propias extensiones, pero con un interior estructuralmente diferente: las extensiones de VS Code llevan un manifiesto package.json en lugar de vsixmanifest, lo que hace que las dos familias sean incompatibles a pesar de compartir la misma extensión de archivo.
Debido a que .vsix es un archivo ZIP, herramientas como 7-Zip pueden abrir el archivo para una inspección manual. Los bytes mágicos (50 4B 03 04 en el desplazamiento 0) son idénticos a los de cualquier archivo ZIP estándar; la presencia de extension.vsixmanifest en su interior es lo que identifica al paquete como una extensión de Visual Studio.
Seguridad y protección
RIESGO: MEDIUMLos paquetes VSIX contienen DLL de .NET compiladas que se ejecutan en el proceso de Visual Studio con total confianza. Una extensión maliciosa puede leer código fuente, credenciales, variables de entorno o instalar puertas traseras persistentes. Instale solo desde Visual Studio Marketplace o fuentes de confianza. Los paquetes del Marketplace se escanean, pero no son infalibles. Para auditorías de seguridad: cambie el nombre a .zip e inspeccione las DLL antes de instalar.
Detalles del formato
en pocas palabras- Paquete de extensión de VS Code - Las extensiones de VS Code también se empaquetan como .vsix (a través de la herramienta vsce) pero utilizan el manifiesto package.json, no el esquema vsixmanifest de Visual Studio.
Programas que abren archivos VSIX
Detalles técnicos
especificación profunda| Formato de contenedor | OPC (Open Packaging Conventions) / Archivo ZIP con `[Content_Types].xml` y partes de relación |
| Compresión | DEFLATE (ZIP por entrada); las entradas individuales pueden almacenarse sin comprimir |
| Archivo de manifiesto | `extension.vsixmanifest` - XML que declara el ID de la extensión, versión, editor, InstallationTarget y rutas de activos |
| Versiones del esquema del manifiesto | v1 (VS 2010-2011) y v2 (VS 2012 y posteriores, actual) |
| Bytes mágicos | `50 4B 03 04` en el desplazamiento 0 (encabezado ZIP estándar); se distingue de otros ZIP por la entrada `extension.vsixmanifest` en su interior |
| Tipo MIME | `application/vsix` |
| Tamaño típico del paquete | 50 KB - 50 MB; la mayoría de las extensiones 1-5 MB; paquetes de idiomas grandes hasta 50 MB |
| Ejecutable del instalador | `VSIXInstaller.exe`, incluido con Visual Studio; se inicia automáticamente al hacer doble clic en un archivo .vsix |
| Canal de distribución | Visual Studio Marketplace (marketplace.visualstudio.com); también descarga directa de archivos y despliegue empresarial |
| Modelo de seguridad | Marketplace valida las firmas Authenticode en las DLL internas; no hay firma criptográfica en el contenedor ZIP en sí |
| Nota sobre VS Code | VS Code también usa .vsix pero con el manifiesto `package.json` en lugar de `vsixmanifest`; los dos no son intercambiables |
| Especificación de destino | El elemento `InstallationTarget` en el manifiesto enumera los ID de producto de VS y los rangos de versiones para la compatibilidad |
| Lanzado | 2010 (Visual Studio 2010; replaced older .vsi/.msi extension model) |
| Última versión | VSIX manifest schema v2.0 (introduced VS 2012; current as of VS 2022) |
| Especificación | learn.microsoft.com |
Conversiones de VSIX
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos VSIX.