Share via


Comandi che devono essere eseguiti dopo l'installazione

Se si distribuisce l'estensione tramite un file msi , è necessario eseguire devenv /setup come parte dell'installazione per consentire a Visual Studio di individuare le estensioni.

Nota

Le informazioni contenute in questo argomento si applicano alla ricerca di devenv.exe con Visual Studio 2008 e versioni precedenti. Per informazioni su come individuare devenv.exe con versioni successive di Visual Studio, vedere Rilevare i requisiti di sistema.

Trovare devenv.exe

È possibile individuare il file devenv.exe di ogni versione dai valori del Registro di sistema scritti dai programmi di installazione di Visual Studio usando la tabella RegLocator e le tabelle AppSearch per archiviare i valori del Registro di sistema come proprietà. Per altre informazioni, vedere Rilevare i requisiti di sistema.

Righe della tabella RegLocator per individuare devenv.exe da versioni diverse di Visual Studio

Firma Radice Key Name Type
RL_DevenvExe_2002 2 SOFTWARE\Microsoft\VisualStudio\7.0\Setup\VS EnvironmentPath 2
RL_DevenvExe_2003 2 SOFTWARE\Microsoft\VisualStudio\7.1\Setup\VS EnvironmentPath 2
RL_DevenvExe_2005 2 SOFTWARE\Microsoft\VisualStudio\8.0\Setup\VS EnvironmentPath 2
RL_DevenvExe_2008 2 SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS EnvironmentPath 2

Righe della tabella AppSearch per le righe della tabella RegLocator corrispondenti

Proprietà Firma
DEVENV_EXE_2002 RL_DevenvExe_2002
DEVENV_EXE_2003 RL_DevenvExe_2003
DEVENV_EXE_2005 RL_DevenvExe_2005
DEVENV_EXE_2008 RL_DevenvExe_2008

Ad esempio, il programma di installazione di Visual Studio scrive il valore del Registro di sistema di HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath come C:\VS2008\Common7\IDE\devenv.exe, un percorso completo del file eseguibile che il programma di installazione deve eseguire.

Nota

Poiché la colonna Type della tabella RegLocator è 2, non è necessario specificare informazioni aggiuntive sulla versione nella tabella Signature.

Eseguire devenv.exe

Dopo l'esecuzione dell'azione standard AppSearch nel programma di installazione, ogni proprietà nella tabella AppSearch ha un valore che punta al file devenv.exe per la versione corrispondente di Visual Studio. Se uno dei valori del Registro di sistema specificati non è presente, perché tale versione di Visual Studio non è installata, la proprietà specificata è impostata su Null.

Windows Installer supporta l'esecuzione di un eseguibile a cui punta una proprietà tramite il tipo di azione personalizzato 50. L'azione personalizzata deve includere le opzioni di esecuzione nello script ( msidbCustomActionTypeInScript 1024) e msidbCustomActionTypeCommit (512) per assicurarsi che il VSPackage sia stato installato correttamente prima di integrarlo in Visual Studio. Per altre informazioni, vedere Tabella CustomAction e Opzioni di esecuzione dell'azione personalizzata nello script.

Le azioni personalizzate di tipo 50 specificano la proprietà contenente il file eseguibile come valore della colonna Source e degli argomenti della riga di comando nella colonna Target.

Righe della tabella CustomAction per eseguire devenv.exe

Azione Type Source Target
CA_RunDevenv2002 1586 DEVENV_EXE_2002 /Installazione
CA_RunDevenv2003 1586 DEVENV_EXE_2003 /Installazione
CA_RunDevenv2005 1586 DEVENV_EXE_2005 /Installazione
CA_RunDevenv2008 1586 DEVENV_EXE_2008 /Installazione

Le azioni personalizzate devono essere create nella tabella InstallExecuteSequence per pianificarle per l'esecuzione durante l'installazione. Usare la proprietà corrispondente in ogni riga della colonna Condizione per impedire l'esecuzione dell'azione personalizzata se tale versione di Visual Studio non è installata nel sistema.

Nota

Le proprietà con valori Null restituiscono False se usate in condizioni.

Il valore della colonna Sequenza per ogni azione personalizzata dipende da altri valori di sequenza nel pacchetto di Windows Installer. I valori di sequenza devono essere tali che le azioni personalizzate devenv.exe vengano eseguite il più vicino possibile prima dell'azione standard InstallFinalize.

Tabella InstallExecuteSequence per pianificare le azioni personalizzate devenv.exe

Azione Condizione Sequence
CA_RunDevenv2002 DEVENV_EXE_2002 6602
CA_RunDevenv2003 DEVENV_EXE_2003 6603
CA_RunDevenv2005 DEVENV_EXE_2005 6605
CA_RunDevenv2008 DEVENV_EXE_2008 6608