共用方式為


必須在安裝後執行的命令

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

如果您透過.msi 檔案部署您的擴充功能,您必須執行devenv /setup順序來探索您的擴充功能的 Visual Studio 安裝的一部分。

注意

本主題中的資訊適用於尋找 DevEnv Visual Studio 2008 及更早版本。 如需如何探索 DevEnv Visual Studio 的版本資訊,請參閱偵測系統需求

尋找 devenv.exe

您可以找到每個版本 devenv.exe 從登錄值Visual Studio撰寫安裝程式,使用 RegLocator 資料表和 AppSearch 資料表來儲存登錄值做為屬性。 如需詳細資訊,請參閱偵測系統需求

若要找出從不同版本的 Visual Studio 的 devenv.exe RegLocator 資料表資料列

Signature_ 索引鍵 名稱 類型
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

AppSearch 對應 RegLocator 資料表資料列的資料表資料列

屬性 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

例如,Visual Studio 安裝程式會將登錄值的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPathC:\VS2008\Common7\IDE\devenv.exe,必須執行安裝程式的可執行檔的完整路徑。

請注意RegLocator 類型資料行是 2,因為不需要指定簽章資料表中的其他版本資訊。

執行 devenv.exe

之後執行安裝程式中的標準動作 AppSearch,AppSearch 資料表中的每個屬性具有對應版本的 Visual Studio 的 devenv.exe 檔案所指向的值。 如果任何指定的登錄值不存在,因為未安裝該版本的 Visual Studio — 指定的屬性設定為 null。

執行自訂動作屬性所指向的可執行檔的 Windows 安裝程式支援輸入 50。 自訂動作應該包含在指令碼的執行選項、 msidbCustomActionTypeInScript (1024) 和 msidbCustomActionTypeCommit (512),以確保 VSPackage 已整合到之前已成功安裝Visual Studio。 如需詳細資訊,請參閱 CustomAction 資料表和自訂動作指令碼中執行的選項。

自訂動作類型 50 的指定屬性包含可執行檔做為來源資料行和目標資料行中的命令列引數的值。

若要執行 devenv.exe CustomAction 資料表資料列

動作 類型 來源 Target
CA_RunDevenv2002 1586 DEVENV_EXE_2002 /setup
CA_RunDevenv2003 1586 DEVENV_EXE_2003 /setup
CA_RunDevenv2005 1586 DEVENV_EXE_2005 /setup
CA_RunDevenv2008 1586 DEVENV_EXE_2008 /setup

若要在安裝期間執行的排程來 InstallExecuteSequence 資料表必須撰寫自訂動作。 若要避免如果執行自訂動作使用條件資料行的每個資料列中對應的屬性版本Visual Studio未安裝在系統上。

注意

Null屬性評估為False時條件中使用。

針對每個自訂動作 [順序] 欄的值取決於 Windows Installer 封裝中的其他順序值。 序列值應為使 devenv.exe 自訂動作以執行盡可能接近前 InstallFinalize 標準動作。

若要安排 devenv.exe 自訂動作 InstallExecuteSequence 資料表

動作 條件 序列
CA_RunDevenv2002 DEVENV_EXE_2002 6602
CA_RunDevenv2003 DEVENV_EXE_2003 6603
CA_RunDevenv2005 DEVENV_EXE_2005 6605
CA_RunDevenv2008 DEVENV_EXE_2008 6608

另請參閱

使用 Windows Installer 安裝 Vspackage