O que é o formato de ficheiro VSIX?
.vsix é o formato de pacote instalador para extensões do Visual Studio. Introduzido com o Visual Studio 2010, ele substituiu o antigo modelo de instalação de extensão .vsi e .msi. O formato permanece atual até o Visual Studio 2022.
Estruturalmente, um arquivo .vsix é um arquivo Open Packaging Conventions - essencialmente um ZIP - contendo um descritor de metadados extension.vsixmanifest, um manifesto OPC [Content_Types].xml e a carga útil da extensão: assemblies .dll compilados, componentes MEF, arquivos de tabela de comando .vsct, snippets e modelos.
O extension.vsixmanifest declara o ID da extensão, versão, nome de exibição e intervalos de InstallationTarget especificando quais versões e SKUs do Visual Studio a extensão suporta. Existem duas versões de esquema de manifesto: v1 (VS 2010-2011) e v2 (VS 2012 e posterior, atual).
Clicar duas vezes em um .vsix no Windows inicia o VSIXInstaller.exe, fornecido com o Visual Studio, que valida e instala a extensão. As extensões também são publicadas e descobertas através do Visual Studio Marketplace em marketplace.visualstudio.com.
O Visual Studio Code também usa pacotes .vsix para suas próprias extensões, mas com um interior estruturalmente diferente: as extensões do VS Code carregam um manifesto package.json em vez de vsixmanifest, tornando as duas famílias incompatíveis, apesar de compartilharem a mesma extensão de arquivo.
Como o .vsix é um arquivo ZIP, ferramentas como o 7-Zip podem abrir o arquivo para inspeção manual. Os magic bytes (50 4B 03 04 no deslocamento 0) são idênticos a qualquer arquivo ZIP padrão; a presença de extension.vsixmanifest no interior é o que identifica um pacote como uma extensão do Visual Studio.
Segurança e proteção
RISCO: MEDIUMOs pacotes VSIX contêm DLLs .NET compiladas que são executadas no processo do Visual Studio com confiança total. Uma extensão maliciosa pode ler código-fonte, credenciais, variáveis de ambiente ou instalar backdoors persistentes. Instale apenas do Visual Studio Marketplace ou de fontes confiáveis. Os pacotes do Marketplace são verificados, mas não são infalíveis. Para auditoria de segurança: renomeie para .zip e inspecione as DLLs antes de instalar.
Detalhes do formato
em resumo- Pacote de Extensão do VS Code - As extensões do VS Code também são empacotadas como .vsix (via ferramenta vsce), mas usam o manifesto package.json, não o esquema vsixmanifest do Visual Studio.
Programas que abrem arquivos VSIX
Detalhes técnicos
especificação profunda| Formato de contêiner | OPC (Open Packaging Conventions) / arquivo ZIP com `[Content_Types].xml` e partes de relacionamento |
| Compressão | DEFLATE (ZIP por entrada); entradas individuais podem ser armazenadas sem compressão |
| Arquivo de manifesto | `extension.vsixmanifest` - XML declarando ID da extensão, versão, editor, InstallationTarget e caminhos de ativos |
| Versões do esquema do manifesto | v1 (VS 2010-2011) e v2 (VS 2012 e posterior, atual) |
| Magic bytes | `50 4B 03 04` no deslocamento 0 (cabeçalho ZIP padrão); distinguido de outros ZIPs pela entrada `extension.vsixmanifest` interna |
| Tipo MIME | `application/vsix` |
| Tamanho típico do pacote | 50 KB - 50 MB; a maioria das extensões 1-5 MB; pacotes de idiomas grandes até 50 MB |
| Executável do instalador | `VSIXInstaller.exe`, incluído no Visual Studio; iniciado automaticamente ao clicar duas vezes em um arquivo .vsix |
| Canal de distribuição | Visual Studio Marketplace (marketplace.visualstudio.com); também download direto de arquivo e implantação empresarial |
| Modelo de segurança | O Marketplace valida assinaturas Authenticode em DLLs internas; não há assinatura criptográfica no próprio contêiner ZIP |
| Nota sobre VS Code | O VS Code também usa .vsix, mas com o manifesto `package.json` em vez de `vsixmanifest`; os dois não são intercambiáveis |
| Especificação de alvo | O elemento `InstallationTarget` no manifesto lista IDs de produtos VS e intervalos de versões para compatibilidade |
| Lançado | 2010 (Visual Studio 2010; replaced older .vsi/.msi extension model) |
| Versão mais recente | VSIX manifest schema v2.0 (introduced VS 2012; current as of VS 2022) |
| Especificação | learn.microsoft.com |
Conversões de VSIX
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos VSIX.