SccAdd 函式
此函式會將新的檔案新增至原始檔控制系統。
語法
SCCRTN SccAdd(
LPVOID pvContext,
HWND hWnd,
LONG nFiles,
LPCSTR* lpFileNames,
LPCSTR lpComment,
LONG* pfOptions,
LPCMDOPTS pvOptions
);
參數
pvContext
[in]原始檔控制外掛程式內容結構。
hWnd
[in]原始檔控制外掛程式可作為其提供之任何對話框之父代的 IDE 視窗句柄。
nFiles
[in]選取要新增至目前專案中的檔案數目,如陣列中所 lpFileNames
指定。
lpFileNames
[in]要加入之檔案的完整本機名稱數位。
lpComment
[in]要套用至所有要新增之檔案的批注。
pfOptions
[in]以每個檔案為基礎提供的命令旗標數位。
pvOptions
[in]原始檔控制外掛程式特定選項。
傳回值
此函式的原始檔控制外掛程式實作應該會傳回下列其中一個值:
值 | Description |
---|---|
SCC_OK | 新增作業成功。 |
SCC_E_FILEALREADYEXISTS | 選取的檔案已在原始檔控制之下。 |
SCC_E_TYPENOTSUPPORTED | 原始檔控制系統不支援檔案的類型(例如二進位檔)。 |
SCC_E_OPNOTSUPPORTED | 原始檔控制系統不支援這項作業。 |
SCC_E_ACCESSFAILURE | 存取原始檔控制系統時發生問題,可能是因為網路或爭用問題。 建議重試。 |
SCC_E_NOTAUTHORIZED | 不允許使用者執行這項作業。 |
SCC_E_NONSPECIFICERROR | 非特定失敗;新增未執行。 |
SCC_I_OPERATIONCANCELED | 作業在完成之前已取消。 |
SCC_I_RELOADFILE | 必須重載檔案或專案。 |
SCC_E_FILENOTEXIST | 找不到本機檔案。 |
備註
這裡的一般 fOptions
會由數位取代為 pfOptions
,每個檔案有一個選項 LONG
規格。 這是因為檔類型可能會因檔案而異。
注意
為相同的檔案指定 SCC_FILETYPE_TEXT
和 SCC_FILETYPE_BINARY
選項無效,但同時指定兩者都無效。 設定兩者都與設定 SCC_FILETYPE_AUTO
相同,在此情況下,原始檔控制外掛程式會自動偵測檔類型。
以下是陣列中使用的 pfOptions
旗標清單:
選項 | 值 | 意義 |
---|---|---|
SCC_FILETYPE_AUTO | 0x00 | 原始檔控制外掛程式應該會偵測文件類型。 |
SCC_FILETYPE_TEXT | 0x01 | 表示 ASCII 文字檔。 |
SCC_FILETYPE_BINARY | 0x02 | 指出 ASCII 文字以外的文件類型。 |
SCC_ADD_STORELATEST | 0x04 | 只儲存檔案的最新複本,沒有差異。 |
SCC_FILETYPE_TEXT_ANSI | 0x08 | 將檔案視為 ANSI 文字。 |
SCC_FILETYPE_UTF8 | 0x10 | 將檔案視為 UTF8 格式的 Unicode 文字。 |
SCC_FILETYPE_UTF16LE | 0x20 | 將檔案視為 UTF16 Little Endian 格式的 Unicode 文字。 |
SCC_FILETYPE_UTF16BE | 0x40 | 將檔案視為UTF16 Big Endian 格式的Unicode文字。 |