Udostępnij za pośrednictwem


Polecenia, które muszą być uruchamiane po instalacji

W przypadku wdrażania rozszerzenia za pomocą pliku msi należy uruchomić polecenie devenv /setup w ramach instalacji, aby program Visual Studio odnajdył rozszerzenia.

Uwaga

Informacje w tym temacie dotyczą znajdowania pliku devenv.exe z programem Visual Studio 2008 i jego wcześniejszymi wersjami. Aby uzyskać informacje na temat odnajdywania pliku devenv.exe w nowszych wersjach programu Visual Studio, zobacz Wykrywanie wymagań systemowych.

Znajdź plik devenv.exe

Możesz zlokalizować każdą wersję devenv.exe z wartości rejestru zapisywanych przez instalatory programu Visual Studio, używając tabeli RegLocator i tabel AppSearch do przechowywania wartości rejestru jako właściwości. Aby uzyskać więcej informacji, zobacz Wykrywanie wymagań systemowych.

Wiersze tabeli RegLocator w celu zlokalizowania pliku devenv.exe z różnych wersji programu Visual Studio

Podpis Element główny Key Nazwa/nazwisko Typ
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

Wiersze tabeli AppSearch dla odpowiadających wierszy tabeli RegLocator

Właściwości Podpis
DEVENV_EXE_2002 RL_DevenvExe_2002
DEVENV_EXE_2003 RL_DevenvExe_2003
DEVENV_EXE_2005 RL_DevenvExe_2005
DEVENV_EXE_2008 RL_DevenvExe_2008

Na przykład instalator programu Visual Studio zapisuje wartość rejestru HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath jako C:\VS2008\Common7\IDE\devenv.exe, należy uruchomić pełną ścieżkę do pliku wykonywalnego instalatora.

Uwaga

Ponieważ kolumna Type tabeli RegLocator wynosi 2, nie jest konieczne określenie dodatkowych informacji o wersji w tabeli Signature.

Uruchom plik devenv.exe

Po uruchomieniu standardowej akcji AppSearch w instalatorze każda właściwość w tabeli AppSearch ma wartość wskazującą plik devenv.exe dla odpowiedniej wersji programu Visual Studio. Jeśli którakolwiek z określonych wartości rejestru nie jest obecna — ponieważ ta wersja programu Visual Studio nie jest zainstalowana — określona właściwość jest ustawiona na wartość null.

Instalator Windows obsługuje uruchamianie pliku wykonywalnego, do którego właściwość wskazuje niestandardowy typ akcji 50. Akcja niestandardowa powinna zawierać opcje wykonywania skryptu ( msidbCustomActionTypeInScript 1024) i msidbCustomActionTypeCommit (512), aby upewnić się, że pakiet VSPackage został pomyślnie zainstalowany przed zintegrowaniem go z programem Visual Studio. Aby uzyskać więcej informacji, zobacz Temat CustomAction table (Tabela CustomAction) i Custom action in-script execution options (Opcje wykonywania akcji niestandardowej w skrycie).

Akcje niestandardowe typu 50 określają właściwość zawierającą plik wykonywalny jako wartość kolumny Źródło i argumenty wiersza polecenia w kolumnie Target.

Wiersze tabeli CustomAction do uruchomienia pliku devenv.exe

Akcja Typ Lokalizacja źródłowa Target
CA_RunDevenv2002 1586 DEVENV_EXE_2002 /Instalacji
CA_RunDevenv2003 1586 DEVENV_EXE_2003 /Instalacji
CA_RunDevenv2005 1586 DEVENV_EXE_2005 /Instalacji
CA_RunDevenv2008 1586 DEVENV_EXE_2008 /Instalacji

Akcje niestandardowe należy utworzyć w tabeli InstallExecuteSequence, aby zaplanować ich wykonywanie podczas instalacji. Użyj odpowiedniej właściwości w każdym wierszu kolumny Warunek, aby zapobiec uruchamianiu akcji niestandardowej, jeśli ta wersja programu Visual Studio nie jest zainstalowana w systemie.

Uwaga

Właściwości o wartości null są obliczane w False przypadku użycia w warunkach.

Wartość kolumny Sekwencja dla każdej akcji niestandardowej zależy od innych wartości sekwencji w pakiecie Instalatora Windows. Wartości sekwencji powinny być takie, że akcje niestandardowe devenv.exe są uruchamiane jak najbliżej bezpośrednio przed akcją ZainstalujFinalize standardowej.

InstallExecuteSequence table to schedule the devenv.exe custom actions (Instalowanie tabeliExecuteSequence w celu zaplanowania niestandardowych akcji devenv.exe)

Akcja Stan 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