錯誤碼
當原始檔控制外掛程式 API 函式傳回錯誤時,它必須是下列其中一個錯誤碼。 所有錯誤都是負數、警告或參考錯誤碼為正數,且成功為 0。
錯誤碼 | 值 | Description |
---|---|---|
SCC_I_SHARESUBPROJOK |
7 | 外掛程式支援在兩個步驟中從原始檔控制新增檔案。 如需詳細資訊,請參閱 SccSetOption。 |
SCC_I_FILEDIFFERS |
6 | 本機檔案與原始檔控制資料庫中的檔案不同(例如, SccDiff 可能會傳回此值)。 |
SCC_I_RELOADFILE |
5 | 原始檔控制作業期間已變更本機檔案;如果可能,IDE 應該重載檔案。 |
SCC_I_FILENOTAFFECTED |
4 | 檔案不會受到影響。 |
SCC_I_PROJECTCREATED |
3 | 專案是在原始檔控制作業期間建立的(例如,在指定旗標時呼叫 SccOpenProject 時 SCC_OP_CREATEIFNEW )。 |
SCC_I_OPERATIONCANCELED |
2 | 作業已取消。 |
SCC_I_ADV_SUPPORT |
1 | 外掛程式支援指定命令的進階選項。 如需詳細資訊,請參閱 SccGetCommandOptions。 |
SCC_OK |
0 | 成功。 |
SCC_E_INITIALIZEFAILED |
-1 | 錯誤:初始化失敗。 |
SCC_E_UNKNOWNPROJECT |
-2 | 錯誤:專案未知。 |
SCC_E_COULDNOTCREATEPROJECT |
-3 | 錯誤:無法建立專案。 |
SCC_E_NOTCHECKEDOUT |
-4 | 錯誤:檔案未取出。 |
SCC_E_ALREADYCHECKEDOUT |
5- | 錯誤:檔案已取出。 |
SCC_E_FILEISLOCKED |
-6 | 錯誤:檔案已鎖定。 |
SCC_E_FILEOUTEXCLUSIVE |
-7 | 錯誤:檔案已獨佔取出。 |
SCC_E_ACCESSFAILURE |
-8 | 存取原始檔控制系統時發生問題,可能是因為網路或爭用問題。 建議重試。 |
SCC_E_CHECKINCONFLICT |
-9 | 錯誤:簽入期間發生衝突。 |
SCC_E_FILEALREADYEXISTS |
-10 | 錯誤:檔案已經存在。 |
SCC_E_FILENOTCONTROLLED |
-11 | 錯誤:檔案不在原始檔控制之下。 |
SCC_E_FILEISCHECKEDOUT |
-12 | 錯誤:檔案已取出。 |
SCC_E_NOSPECIFIEDVERSION |
-13 | 錯誤:沒有指定的版本。 |
SCC_E_OPNOTSUPPORTED |
-14 | 錯誤:不支援作業。 |
SCC_E_NONSPECIFICERROR |
-15 | 非特定錯誤。 |
SCC_E_OPNOTPERFORMED |
-16 | 錯誤,未執行作業。 |
SCC_E_TYPENOTSUPPORTED |
-17 | 錯誤:原始程式碼控制系統不支援檔案的類型,例如二進位檔。 |
SCC_E_VERIFYMERGE |
-18 | 檔案已自動合併,但尚未檢查,因為檔案正在擱置用戶驗證。 |
SCC_E_FIXMERGE |
-19 | 檔案已自動合併,但因必須手動解決的合併衝突而尚未簽入。 |
SCC_E_SHELLFAILURE |
20- | 殼層失敗所造成的錯誤。 |
SCC_E_INVALIDUSER |
21- | 錯誤:用戶無效。 |
SCC_E_PROJECTALREADYOPEN |
22- | 錯誤:項目已開啟。 |
SCC_E_PROJSYNTAXERR |
-23 | 專案語法錯誤。 |
SCC_E_INVALIDFILEPATH |
24- | 錯誤:檔案路徑無效。 |
SCC_E_PROJNOTOPEN |
-25 | 錯誤:專案未開啟。 |
SCC_E_NOTAUTHORIZED |
26- | 錯誤:使用者未獲授權執行這項作業。 |
SCC_E_FILESYNTAXERR |
-27 | 檔案語法錯誤。 |
SCC_E_FILENOTEXIST |
-28 | 錯誤,本機檔案不存在。 |
SCC_E_CONNECTIONFAILURE |
-29 | 錯誤:發生連線失敗。 |
SCC_E_UNKNOWNERROR |
-30 | 未知的誤差。 |
SCC_E_BACKGROUNDGETINPROGRESS |
-31 | 背景取得作業目前正在進行中。 |
提供用於快速檢查的宏
IS_SCC_ERROR(rtn) (((rtn) < 0) ? TRUE : FALSE)
IS_SCC_SUCCESS(rtn) (((rtn) == SCC_OK) ? TRUE : FALSE)
IS_SCC_WARNING(rtn) (((rtn) > 0) ? TRUE : FALSE)
備註
所有原始檔控制外掛程式 API 函式(SccAdd、SccCheckin 和 SccDiff 除外)預期會在工作資料夾中不存在作為自變數傳遞的本機檔案成功。 例如,IDE 可能會對工作資料夾中不存在但存在於原始檔控制系統中的 SccCheckout 或 SccUncheckout 發出呼叫。 此呼叫會成功。 只有在工作資料夾或原始檔控制系統中沒有檔案時,函式才會失敗。
某些函式,例如 SccAdd
和 SccCheckin
,在工作資料夾中的檔案不存在時,應該特別傳回 SCC_E_FILENOTEXIST
。 如果函式在原始檔中運作的有效檔名,則當工作檔案不存在時,其他函式應該會成功。
原始檔控制外掛程式不應假設工作資料夾中檔案的許可權,即使外掛程式在某些作業期間已將檔案標示為唯讀也一樣。 工作資料夾中的檔案可以在外掛程式控制項之外移動、刪除和變更。