共用方式為


SccAddFromScc 函式

此函式可讓使用者瀏覽原始檔控制系統中已有的檔案,並接著將這些檔案目前專案。 比方說,這個函式會變為一般的標頭檔目前的專案而不複製檔案。 傳回陣列的檔案, lplpFileNames,包含使用者想要在 IDE 的專案中加入的檔案清單。

SCCRTN SccAddFromScc (
   LPVOID   pvContext,
   HWND     hWnd,
   LPLONG   lpnFiles,
   LPCSTR** lplpFileNames
);

參數

  • pvContext
    [in]原始檔控制外掛程式的內容結構。

  • hWnd
    [in]原始檔控制外掛程式可用於為父代對話框它所提供的 IDE 視窗控制代碼。

  • lpnFiles
    輸入 [、 輸出]在新增的檔案數目的緩衝區。 (這是NULL若所指的記憶體lplpFileNames會被釋放。 請參閱 「 備註 」 如需詳細資訊)。

  • lplpFileNames
    輸入 [、 輸出]沒有目錄路徑的所有檔案名稱的指標陣列。 這個陣列配置及釋放原始檔控制外掛程式。 如果lpnFiles = 1 和lplpFileNames不是NULL,陣列中的第一個名稱所指lplpFileNames包含目的資料夾。

傳回值

原始檔控制外掛程式的實作這個函式被期待傳回下列值之一:

描述

SCC_OK

檔案已成功找到而且加入至專案。

SCC_I_OPERATIONCANCELED

操作被取消時不會影響。

SCC_I_RELOADFILE

需要重新載入檔案或專案。

備註

IDE 會呼叫這個函式。 如果原始檔控制外掛程式支援指定的本機目的地資料夾,IDE 會傳遞lpnFiles = 1,並傳遞到本機資料夾名稱lplpFileNames。

當呼叫SccAddFromScc函式傳回時,外掛程式已指派值給lpnFiles和lplpFileNames,為所需的檔案名稱陣列配置記憶體 (請注意此配置會取代在指標lplpFileNames)。 原始檔控制外掛程式負責放置到使用者的目錄,或指定的指定資料夾中的所有檔案。 IDE 然後會將檔案加入至 IDE 的專案。

最後,IDE 呼叫這個函式一次傳遞中的NULL的lpnFiles。 此值解譯為特殊的訊號,原始檔控制外掛程式,以便在配置中的檔案名稱陣列的記憶體釋放出來lplpFileNames.

lplpFileNames是char ***指標。 原始檔控制外掛程式會將檔名,藉以傳遞清單的標準方法,此 API 的指標陣列的指標。

注意事項注意事項

初始版本的 VSSCI api 無法滿足講求可以指出加入之檔案的目標專案。要做到的語意,這一點lplpFIleNames參數已經過加強,以便輸入/輸出參數,而不是輸出參數。如果只指定一個檔案,也就是值所指lpnFiles = 1,則第一個元素的lplpFileNames包含目標資料夾。若要使用這些新的語意,IDE 呼叫SccSetOption函式與nOption參數設為SCC_OPT_SHARESUBPROJ。如果原始檔控制外掛程式不支援語意,則會傳回SCC_E_OPTNOTSUPPORTED。做這樣的停用使用從原始檔控制的新增功能。如果外掛程式支援從原始檔控制的新增功能 (SCC_CAP_ADDFROMSCC),則它必須支援新的語意,並傳回SCC_I_SHARESUBPROJOK。

請參閱

參考

SccSetOption 函式

概念

原始檔控制外掛程式應用程式開發介面函式