共用方式為


相關的服務和介面 (原始檔控制 VSPackage)

本節列出 Visual Studio SDK 中的所有原始檔控制 VSPackage 相關介面。 原始檔控制 VSPackage 會實作其中一些介面,並使用其他介面來完成原始檔控制工作。

原始檔控制 VSPackage 所實作的介面

Visual Studio SDK 會說明下列介面,而原始檔控制 VSPackage 會根據所需的功能集來實作其中的子集。 某些介面會標示為必要,而且必須由每個原始檔控制 VSPackage 實作。

對於封裝未實作的介面,Visual Studio 會提供預設實作。 請注意,當未註冊 VSPackage 且未控制任何專案時,預設實作是針對此案例所設計。 正確撰寫的原始檔控制 VSPackage 會實作所有必要的介面,而不是將它留給這些介面的默認實作。

原始檔控制 VSPackage 必須實作私用服務,以封裝下列部分或所有介面。

介面包括:

  • 必要:適當的實體(原始檔控制 VSPackage、原始檔控制存根、專案)必須實作 介面。

  • 建議:實體應實作此介面;否則,原始檔控制功能可能會受到限制。

  • 選擇性:實體可以實作這個介面,以提供更豐富的功能集。

介面 目的 實作者 實現?
IVsQueryEditQuerySave2 編輯器會先呼叫這個介面,再修改或儲存盤案。 原始檔控制 VSPackage 可以取出檔案,或在簽出失敗時拒絕作業。 原始檔控制 VSPackage 建議需求
IVsSccManager2 這個介面提供專案的基本原始檔控制功能,例如向原始檔控制註冊和取消註冊專案,以及提供基本原始檔控制圖像的支援。 原始檔控制 VSPackage 必要
IVsSccProject2 這個介面是使用 QueryInterface 函式從 IVsHierarchy 取得,或只是將實作 IVsHierarchy IVsSccProject2的物件轉換成 。 它用於取得專案中原始檔控制下的檔案,或用來通知專案目前的原始檔控制狀態或位置。 Project 必要
IVsSccProvider 整合模組會使用此介面來設定目前的使用中 VSPackage。 原始檔控制 VSPackage 必要
IVsTrackProjectDocuments2 此介面是以訂用帳戶模型為基礎。 任何 VSPackage 都可以發出想要接收檔事件的訊號,並由殼層針對即將發生的事件提供建議。 它會由 Visual Studio 實作及處理,進而將 實 IVsTrackProjectDocumentsEvents2 作 的事件傳遞至 VSPackage。 原始檔控制存根 必要
IVsTrackProjectDocuments3 這個介面提供批處理、同步的讀取/寫入作業,以及進階 OnQueryAddFiles 方法。 原始檔控制存根 必要
IVsTrackProjectDocumentsEvents2 當新檔案新增至專案時,或從專案重新命名或刪除檔案和資料夾時,方案總管和專案會呼叫這個介面。 原始檔控制 VSPackage 可以簽出項目檔或取消作業。 原始檔控制 VSPackage 建議需求
IVsTrackProjectDocumentsEvents3 方案總管和專案會呼叫這個介面,以回應 IVstrackProjectDocuments3 介面方法的呼叫。 原始檔控制 VSPackage 可以追蹤批次作業、同步讀取/寫入作業,以及使用更進階 OnQueryAddFiles 的方法。 原始檔控制 VSPackage 建議需求
IVsSccEnlistmentPathTranslation 此介面提供 Web 專案的登記管理支援。 原始檔控制 VSPackage 建議需求
IVsSccManagerTooltip 此介面可用來擷取專案中原始檔控制檔案的工具 提示。 原始檔控制 VSPackage 選擇性
IVsSccOpenFromSourceControl 此介面提供命名空間延伸模組支援。 原始檔控制 VSPackage 選擇性
IVsSccControlNewSolution VSPackage 會使用此介面將命名空間延伸模組整合到 [新增]、[開啟] 或 [儲存] 對話框中。 因此,專案可以在建立時自動新增至原始檔控制,或在儲存作業生效時新增至原始檔控制。 原始檔控制 VSPackage 選擇性
IVsSccGlyphs VSPackage 會使用此介面來定義額外的圖像作為 方案總管節點的原始檔控制圖像。 原始檔控制 VSPackage 選擇性
IVsSccAddWebProjectFromSourceControl Web 專案的 [ 新增 ] 對話框會使用此介面。 它提供流覽原始檔控制位置的方法,以及開啟先前在該位置之原始檔控制存放庫中新增的 Web 專案。 原始檔控制 VSPackage 建議需求
IVsAsynchOpenFromScc 這個介面支援從原始檔控制載入專案的異步(背景)。 原始檔控制 VSPackage 選擇性
IVsAsynchOpenFromSccProjectEvents 這個介面可讓專案監看由 IVsAsynchOpenFromScc起始的異步載入進度。 Project 選擇性
IVsSccToolsOptions 此介面可讓 IDE 查詢使用中的原始檔控制 VSPackage。 IDE 會查詢原始檔控制設定的值,即使沒有註冊使用中的原始檔控制 VSPackage 也一定有意義。 這個介面是由 Visual Studio 實作和處理。 原始檔控制存根 必要
IVsRegisterScciProvider 此介面用於註冊原始檔控制 VSPackage。 原始檔控制存根 必要
SourceControl 這個介面用於自動化。 因此,它只會公開可在不顯示任何UI的情況下執行的函式。 原始檔控制 VSPackage 選擇性
IVsPersistSolutionProps 此介面可用來將原始檔控制設定儲存在方案 (.sln) 檔案中。 這些設定包括原始檔控制位置和原始檔控制狀態旗標。 原始檔控制 VSPackage 建議需求
IVsPersistSolutionOpts 此介面可用來將原始檔控制設定儲存在方案選項 (.suo) 檔案中。 這可能包括使用者特定的原始檔控制設定,例如目前用戶的登記位置。 原始檔控制 VSPackage 建議需求
IVsSolutionEvents3 此介面可用來監視事件,以便執行作業,例如在關閉方案之前檢查項目檔,或在開啟專案時從原始檔控制取得新檔案。 原始檔控制 VSPackage 建議需求

另請參閱