SccDirDiff 函式
此函式會顯示用戶端磁碟上目前本機目錄與原始檔控制下對應專案之間的差異。
語法
SCCRTN SccDirDiff(
LPVOID pContext,
HWND hWnd,
LPCSTR lpDirName,
LONG dwFlags,
LPCMDOPTS pvOptions
);
參數
pContext
[in]原始檔控制外掛程式內容結構。
hWnd
[in]原始檔控制外掛程式可作為其提供之任何對話框之父代的 IDE 視窗句柄。
lpDirName
[in]要顯示視覺差異之本機目錄的完整路徑。
dwFlags
[in]命令旗標(請參閱一節)。
pvOptions
[in]原始檔控制外掛程式特定選項。
傳回值
此函式的原始檔控制外掛程式實作應該會傳回下列其中一個值:
值 | Description |
---|---|
SCC_OK | 磁碟上的目錄與原始程式碼控制件中的專案相同。 |
SCC_I_FILESDIFFER | 磁碟上的目錄與原始程式碼控制件中的專案不同。 |
SCC_I_RELOADFILE | 必須重載檔案或專案。 |
SCC_E_FILENOTCONTROLLED | 目錄不在原始程式碼控制之下。 |
SCC_E_NOTAUTHORIZED | 不允許使用者執行這項作業。 |
SCC_E_ACCESSFAILURE | 存取原始檔控制系統時發生問題,可能是因為網路或爭用問題。 建議重試。 |
SCC_E_NONSPECIFICERROR SCC_E_UNKNOWNERROR |
非特定失敗。 |
SCC_E_FILENOTEXIST | 找不到本機目錄。 |
備註
此函式可用來指示原始檔控制外掛程式向用戶顯示指定目錄的變更清單。 外掛程式會以選擇的格式開啟自己的視窗,以顯示磁碟上用戶目錄與版本控制下對應專案之間的差異。
如果外掛程式完全支援目錄的比較,它必須支援以檔名為基礎的目錄比較,即使不支援 “quick-diff” 選項也一樣。
dwFlags |
解釋 |
---|---|
SCC_DIFF_IGNORECASE | 不區分大小寫的比較(可用於快速差異或視覺效果)。 |
SCC_DIFF_IGNORESPACE | 忽略空格符(可用於快速差異或視覺效果)。 |
SCC_DIFF_QD_CONTENTS | 如果原始檔控制外掛程式支援,則以無訊息方式比較目錄位元組位元組。 |
SCC_DIFF_QD_CHECKSUM | 如果外掛程式支援,則以無訊息方式比較目錄與總和檢查碼,如果不支援,則會回復為SCC_DIFF_QD_CONTENTS。 |
SCC_DIFF_QD_TIME | 如果外掛程式支援,則以無訊息方式比較目錄與其時間戳,或若不支援,則會回復SCC_DIFF_QD_CHECKSUM或SCC_DIFF_QD_CONTENTS。 |
注意
此函式會使用與 SccDiff 相同的命令旗標。 不過,原始檔控制外掛程式可以選擇不支援目錄的「快速差異」作業。