共用方式為


HOW TO:使用參考管理員新增或移除參考

您可以使用 [參考管理員] 對話方塊加入和管理您, Microsoft,或者其他公司開發的元件的參考。 如果您開發 Windows 市集 應用程式,您的專案會自動參考所有 Windows 8 SDK 和 .NET Framework。 如果您開發其他類型的專案,您必須以手動方式加入專案的這些參考。

警告

使用 [加入參考] 對話方塊,您可以將其他類型的專案參考。如需詳細資訊,請參閱HOW TO:使用加入參考對話方塊加入或移除參考

加入和移除參考

將專案中的參考

  1. 在功能表列上,選擇 [檔案]],則 [開啟]。

  2. 巡覽至您的方案或專案。

  3. 在 [方案總管] 中,開啟參考節點的捷徑功能表,然後選擇 [加入參考]。

  4. 在 [參考管理員] 對話方塊中,指定要加入的參考,然後選擇 [OK] 按鈕。

若要移除參考,開啟其捷徑功能表,然後選擇 [移除]。

若要在 C ++. 專案的參考

  1. 在功能表列上,選擇 [檔案]],則 [開啟]。

  2. 巡覽至您的方案或專案。

  3. 在 [方案總管] 中,開啟專案節點的捷徑功能表,然後選擇 [ 參考]。

  4. 在 [屬性頁] 對話方塊中,選取 [加入新的參考] 按鈕。

  5. 在 [加入參考] 對話方塊中,指定要加入的參考,然後選擇 [OK] 按鈕。

若要移除參考,開啟其捷徑功能表,然後選擇 [移除]。

[參考管理員] 由群組開啟並列出可用的參考。 專案類型會決定下列群組會出現:

  • 組件,而 Framework 和擴充子群組的。

  • 方案中,與專案群組。

  • 視窗,有核心和擴充子群組的。 使用 [物件瀏覽器]],您可以探索 Windows SDK 或擴充功能 SDK 的參考。

  • 瀏覽,與新子群組。

組件選項

[組件] 索引標籤會列出可供參考的所有 .NET Framework 組件。 因為在 GAC 中的組件是這個執行階段環境的一部分, [組件] 索引標籤會列出從全域組件快取 (GAC) 的任何組件。 如果您部署或複製不論複製到本機設定,包含組件的參考在 GAC 中註冊的應用程式,組件將不會部署也不會複製與應用程式。 如需詳細資訊,請參閱 專案參考

當您手動加入的參考任何 EnvDTE 命名空間 (EnvDTE、EnvDTE80、EnvDTE90、EnvDTE90a 或 EnvDTE100),將參考的內嵌 Interop 型別屬性設定為 false 的在屬性視窗中。 將這個屬性設定為 true 可能會導致組建問題無法內嵌的某些屬性。

所有桌面專案包含 mscorlib 的隱含參考。 Visual Basic 專案包含 Microsoft.VisualBasic 的隱含參考。 在 Visual Studio 2012,所有專案包含 System.Core 的隱含參考,,即使它從參考清單中移除。

如果專案類型不支援組件,這個選項不會出現在 [參考管理員] 對話方塊。

組件選項包括兩個子選項:

  1. Framework 清單中撰寫目標 Framework 的所有組件。

    • 通告的組件是以完整 Framework 和列舉 Framework 清單,當您的專案所使用的目標 Framework 的設定檔。 通告的組件是灰色區分它們從存在於專案的目標 Framework 設定檔的組件。 例如,在中,如果專案以 .NET Framework 4 Client, Framework 清單中顯示從 .NET Framework 4 的通告的組件。 當使用者將通告的組件時,使用者,告知,請在 [參考管理員] 對話方塊關閉之後,專案將重定目標為 .NET Framework 4,並發出通告的組件將會增加。

    • 專案供 Windows 市集 應用程式對所有的參考組件在目標的 適用於 Windows 市集應用程式的 .NET 中預設專案建立。 在 Managed 專案,唯讀節點在 [方案總管] 指令的參考資料夾下對整個 Framework 的參考。 因此, Framework 選項不會列舉任何從 Framework 的組件並不會顯示下列訊息:「所有 Framework 組件已經被參考了。 請使用物件瀏覽器瀏覽在 Framework 的參考」。對於桌面專案, Framework 選項列舉從目標 Framework 的組件,因此,使用者必須將應用程式要求的參考。

  2. 副檔名清單元件和控制項外部廠商開發擴充目標 Framework 的所有組件。 根據使用者應用程式的用途,可能需要這些組件。

    • 擴充功能將列舉型別在下列位置中註冊的組件填入:

      32-bit machine:
      HKEY_CURRENT_USER\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
      64-bit machine:
      HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
      HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
      And older versions of the [Target Framework Identifier]
      

      例如,在中,如果專案的目標是在 32 位元電腦上的 .NET Framework 4,擴充功能會列舉已註冊在\ Microsoft \ .NETFramework \ v4.0 \ AssemblyFoldersEx \, \ Microsoft \ .NETFramework \ v3.5 \ AssemblyFoldersEx \, \ Microsoft \ .NETFramework \ v3.0 \ AssemblyFoldersEx \,和\ Microsoft \ .NETFramework \ v2.0 \ AssemblyFoldersEx \的組件。

COM 索引標籤

COM 索引標籤會列出可供參考的 COM 元件。 如果您要將包含內部資訊清單的已註冊 COM DLL 的參考,或先 DLL。 否則, Visual Studio 會將組件參考為 ActiveX 控制項而不是原生 DLL。

如果專案類型不支援 COM,這個選項不會出現在 [參考管理員] 對話方塊。

方案選項

方案選項列出目前方案中所有符合專案,在專案的選項。

專案可以參考其他專案的目標 .NET Framework 版本不同。 例如,您可以建立之專案的目標 .NET Framework 4 ,但是參考為 .NET Framework 2. 所建置的組件。 不過, .NET Framework 2 專案無法參考 .NET Framework 4 專案。 如需詳細資訊,請參閱以特定的 .NET Framework 版本或設定檔為目標

專案的目標 .NET Framework 4 的專案不相容的目標 .NET Framework 4 Client Profile。

在 Visual Studio 2012中,而非專案參考的檔案參考建立,如果專案以 .NET Framework 4,而另一個專案的目標是舊版。

專案的目標 適用於 Windows 市集應用程式的 .NET 無法在專案中加入專案參考目標為 .NET Framework 反之亦然。

視窗索引標籤

視窗索引標籤列出專屬於平台 Windows 作業系統上執行的所有 SDK。

您可以在 Visual Studio 中 WinMD 檔案有兩種:

  • Windows 市集 應用程式專案: Windows 市集 應用程式專案可以設定專案屬性輸出 WinMD 二進位檔|輸出類型 = WinMD 檔案。 WinMD 檔案名稱必須是檔案中存在的所有命名空間的超集命名空間。 例如,如果專案,包括命名空間 A.B 和 A.B.C,可能名稱其輸出 WinMD 為 A.winmd、A.B.winmd。 如果使用者輸入專案屬性|組件名稱或專案屬性|是從組斷續在專案的命名空間或未在專案內的超集命名空間的命名空間值,建置警告產生:「A.winmd」不是有效的 .winmd 檔案名稱。這個組件。 在 Windows 中繼資料檔案內的所有型別必須存在於檔案名稱的子命名空間。 不存在於檔案名稱的子命名空間中的型別無法在執行階段。 在這個組件中,最小的通用命名空間為「CSWSClassLibrary1」。 使用 Windows 8 SDK,桌面 Visual Basic 或 Visual C# 專案只使用產生,稱為第一方的 WinMDs 的 WinMDs,無法產生 WinMDs。

  • Windows 市集 應用程式原生專案:原生 WinMD 檔案只包含中繼資料。 它在個別的 DLL 中實作存在檔案。 一個可以選取 Windows 執行階段元件專案範本在 [新的專案] 對話方塊或從空白專案開始及修改專案屬性產生 WinMD 檔案產生的二進位檔。 如果專案包含不相交命名空間,建置錯誤會告訴使用者結合其命名空間或執行 MSMerge 工具。

視窗索引標籤包含兩個子選項。

Hh708954.collapse_all(zh-tw,VS.110).gif核心子群組。

核心選項列出所有 WinMDs (為 WinRT 項目) 在視窗目標版本的 SDK。

Windows 市集 應用程式專案對所有的參考 WinMDs 在 Windows 8 SDK 中預設專案建立。 在 Managed 專案,唯讀節點在 [方案總管] 指令的參考資料夾下對整個 Windows 8 SDK 的參考。 因此,在參考管理員的核心選項不會列舉任何從 Windows 8 SDK 的組件並不會顯示訊息:「Windows SDK 已經被參考了。 請使用物件瀏覽器瀏覽 Windows SDK 的參考。

預設會在桌面專案核心選項就不會出現。 您可以開啟專案節點的捷徑功能表加入 Windows 執行階段中,選取 [卸載專案],加入下列程式碼片段並重新開啟專案 (在專案節點選取 [重新載入專案。])。 當您叫用 [參考管理員] 對話方塊時,核心選項隨即出現。

  <PropertyGroup>
    <TargetPlatformVersion>8.0</TargetPlatformVersion>
  </PropertyGroup>

確定檢查在索引標籤的視窗檻花紙匣。 您應該就能使用 WinRT 項目。

Hh708954.collapse_all(zh-tw,VS.110).gif擴充子群組。

副檔名清單擴充目標的 Windows Platform SDK 的使用者。 這個選項只能用於 Windows 市集 應用程式專案隨即出現。 因為它們可以使用只有第一方的 .winmd 檔案組成,桌面專案不會顯示這個索引標籤。

Visual Studio SDK 是視為單一元件檔案的集合。 在擴充選項,適用於專案 [參考管理員] 對話方塊叫用的 SDK 清單為單一項目。 在加入至專案時,所有 SDK 內容由 Visual Studio 使用這類使用者不需要採取任何其他動作支援 IntelliSense、工具箱、設計工具、物件瀏覽器、組建、部署、偵錯和封裝的 SDK 內容。 如需如何顯示您在擴充功能 SDK 的資訊中的中,請參閱 HOW TO:建立軟體開發套件

注意事項注意事項

如果專案參考取決於其他 SDK 的 SDK, Visual Studio 不會使用第二個 SDK,除非使用者手動加入第二個 SDK 的參考。當使用者選取 [擴充功能] 選項時的 SDK, [參考管理員] 對話方塊可協助使用者透過清單 SDK 的名稱識別 SDK 相依性和版本,而且所有 SDK 相依性不僅名稱在詳細資料窗格中。如果使用者不注意相依性和就會將該 SDK, MSBuild 會提示使用者將相依性。

如果專案類型不支援 [擴充功能],這個選項不會出現在 [參考管理員] 對話方塊。

瀏覽按鈕

您可以使用 [瀏覽] 按鈕可在檔案系統中的元件瀏覽。

專案可以參考目標為不同 .NET Framework 版本的元件。 例如,您可以建立目標為 .NET Framework 4 Client Profile,參考元件以 .NET Framework 2. 的應用程式。 如需詳細資訊,請參閱以特定的 .NET Framework 版本或設定檔為目標

因為這種可能會造成編譯錯誤,您應該避免將其他專案輸出的檔案參考相同方案中。 相反地,請使用 [參考管理員] 對話方塊的 [方案] 索引標籤來建立專案對專案間的參考。 這種策略可讓小組開發可透過啟用您在專案中建立類別庫的較佳的管理。 如需詳細資訊,請參閱中斷參考的疑難排解

您無法瀏覽到 SDK 並將它加入至專案。 您只能瀏覽檔案 (例如,組件或 .winmd) 並將它加入至專案。

當對 WinMD 時的檔案參考,預期的配置是 [檔名].winmd ,[檔名].dll 和 [檔名].pri 檔案全部沿著彼此之上。 如果您參考在下列案例中 WinMD,實際上並不會將檔案複製到專案輸出目錄,而且,因此,建置並執行階段失敗時發生。

  • 原生元件:原生專案會建立包含實作的每個互斥集的 WinMD 命名空間和一個 DLL。 WinMDs 會有不同的名稱。 當參考原生元件檔, MSBuild 不會視為時不像名為 WinMDs 執行元件。 因此,相同只名為 [檔名].dll,而且 [檔名].winmd 檔案名稱將被複製,因此,執行時會發生錯誤。 若要解決這個問題,請建立擴充功能 SDK。 如需詳細資訊,請參閱HOW TO:建立軟體開發套件

  • 使用的控制項:至少, XAML 控制項由 [檔名].winmd 檔案名稱, [檔名].dll, [檔名].pri, [xaml 名稱].xaml 和 [圖檔名稱].jpg。 建置專案時,會與文件參考不會複製到專案的輸出只目錄和資源檔 [檔名].winmd, [檔名].dll 和 [檔名].pri 要複製。 建置錯誤記錄通知使用者資源 [xaml 名稱].xaml 和 [圖檔名稱].jpg 遺失。 若要成功,使用者必須手動複製這些資源檔至專案偵錯輸出的目錄組建和/執行階段。 若要解決這個問題,請依照 HOW TO:建立軟體開發套件 中的步驟建立擴充功能 SDK 或編輯專案檔中加入下列屬性:

    <PropertyGroup>
    <GenerateLibraryOutput>True</GenerateLibraryOutput>
    </PropertyGroup>
    
    注意事項注意事項

    如果您加入屬性,組建可能會變慢。

最近使用

組件, COM,視窗,並瀏覽每個支援新選項,列舉元件清單最近加入至專案。

搜尋

在 [參考管理員] 對話方塊中的搜尋列操作在焦點的選項。 例如,在中,如果使用者輸入「System」在搜尋列,當方案選項有焦點時,搜尋不會傳回任何結果,除非方案包含專案名稱包含「System」。

請參閱

工作

HOW TO:使用加入參考對話方塊加入或移除參考

概念

管理專案參考