Partilhar via


Comandos que devem ser executados após a instalação

Se você implantar sua extensão por meio de um arquivo .msi , deverá executar devenv /setup como parte de sua instalação para que o Visual Studio descubra suas extensões.

Observação

As informações neste tópico se aplicam à localização de devenv.exe com o Visual Studio 2008 e versões anteriores. Para obter informações sobre como descobrir devenv.exe com versões posteriores do Visual Studio, consulte Detectar requisitos do sistema.

Encontre devenv.exe

Você pode localizar o devenv de cada versão.exe a partir de valores do Registro que os instaladores do Visual Studio escrevem, usando a tabela RegLocator e as tabelas AppSearch para armazenar os valores do Registro como propriedades. Para obter mais informações, consulte Detectar requisitos do sistema.

Linhas de tabela RegLocator para localizar devenv.exe de diferentes versões do Visual Studio

Signature Raiz Chave Name Tipo
RL_DevenvExe_2002 2 SOFTWARE\Microsoft\VisualStudio\7.0\Setup\VS Caminho do Ambiente 2
RL_DevenvExe_2003 2 SOFTWARE\Microsoft\VisualStudio\7.1\Setup\VS Caminho do Ambiente 2
RL_DevenvExe_2005 2 SOFTWARE\Microsoft\VisualStudio\8.0\Setup\VS Caminho do Ambiente 2
RL_DevenvExe_2008 2 SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS Caminho do Ambiente 2

Linhas da tabela AppSearch para as linhas da tabela RegLocator correspondentes

Propriedade Signature
DEVENV_EXE_2002 RL_DevenvExe_2002
DEVENV_EXE_2003 RL_DevenvExe_2003
DEVENV_EXE_2005 RL_DevenvExe_2005
DEVENV_EXE_2008 RL_DevenvExe_2008

Por exemplo, o instalador do Visual Studio grava o valor do Registro de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath como C:\VS2008\Common7\IDE\devenv.exe, um caminho completo para o executável que o instalador deve executar.

Observação

Como a coluna Tipo da tabela RegLocator é 2, não é necessário especificar informações de versão adicionais na tabela Assinatura.

Execute devenv.exe

Depois que a ação padrão AppSearch é executada no instalador, cada propriedade na tabela AppSearch tem um valor apontando para o arquivo devenv.exe para a versão correspondente do Visual Studio. Se qualquer um dos valores de registro especificados não estiverem presentes — porque essa versão do Visual Studio não está instalada — a propriedade especificada será definida como null.

O Windows Installer oferece suporte à execução de um executável para o qual uma propriedade aponta por meio do tipo de ação personalizada 50. A ação personalizada deve incluir as opções de execução no script, msidbCustomActionTypeInScript (1024) e msidbCustomActionTypeCommit (512), para garantir que o VSPackage tenha sido instalado com êxito antes de integrá-lo ao Visual Studio. Para obter mais informações, consulte Tabela CustomAction e Opções de execução em script de ação personalizada.

As ações personalizadas do tipo 50 especificam a propriedade que contém o executável como o valor da coluna Origem e dos argumentos de linha de comando na coluna Destino.

Linhas da tabela CustomAction para executar o devenv.exe

Ação Tipo Origem Destino
CA_RunDevenv2002 1586 DEVENV_EXE_2002 /configuração
CA_RunDevenv2003 1586 DEVENV_EXE_2003 /configuração
CA_RunDevenv2005 1586 DEVENV_EXE_2005 /configuração
CA_RunDevenv2008 1586 DEVENV_EXE_2008 /configuração

As ações personalizadas devem ser criadas na tabela InstallExecuteSequence para agendá-las para execução durante a instalação. Use a propriedade correspondente em cada linha da coluna Condição para impedir que a ação personalizada seja executada se essa versão do Visual Studio não estiver instalada no sistema.

Observação

As propriedades de valor nulo são avaliadas quando False usadas em condições.

O valor da coluna Sequência para cada ação personalizada depende de outros valores de sequência no pacote do Windows Installer. Os valores de sequência devem ser tais que as ações personalizadas devenv.exe sejam executadas o mais próximo possível de imediatamente antes da ação padrão InstallFinalize.

Tabela InstallExecuteSequence para agendar as ações personalizadas devenv.exe

Ação Condição Sequência
CA_RunDevenv2002 DEVENV_EXE_2002 6602
CA_RunDevenv2003 DEVENV_EXE_2003 6603
CA_RunDevenv2005 DEVENV_EXE_2005 6605
CA_RunDevenv2008 DEVENV_EXE_2008 6608