QUERYCHANGESFUNC
SccQueryChanges 작업에서 파일 이름 컬렉션을 열거하고 각 파일의 상태를 확인하는 데 사용하는 콜백 함수입니다.
SccQueryChanges
함수에는 파일 목록과 QUERYCHANGESFUNC
콜백에 대한 포인터가 제공됩니다. 소스 제어 플러그 인은 지정된 목록을 열거하고 목록의 각 파일에 대한 상태(이 콜백을 통해)를 제공합니다.
서명
typedef BOOL (*QUERYCHANGESFUNC)(
LPVOID pvCallerData,
QUERYCHANGESDATA * pChangesData
);
매개 변수
pvCallerData
[in] 호출자(IDE)가 SccQueryChanges에 전달한 pvCallerData
매개 변수입니다. 소스 제어 플러그 인은 이 값의 내용에 대해 가정하지 않아야 합니다.
pChangesData
[in] 파일의 변경 내용을 설명하는 QUERYCHANGESDATA 구조에 대한 포인터입니다.
반환 값
IDE는 적절한 오류 코드를 반환합니다.
값 | Description |
---|---|
SCC_OK | 처리를 계속합니다. |
SCC_I_OPERATIONCANCELED | 처리를 중지합니다. |
SCC_E_xxx | 적절한 SCC 오류는 처리를 중지해야 합니다. |
QUERYCHANGESDATA 구조
각 파일에 대해 전달된 구조는 다음과 같습니다.
struct QUERYCHANGESDATA_A
{
DWORD dwSize;
LPCSTR lpFileName;
DWORD dwChangeType;
LPCSTR lpLatestName;
};
typedef struct QUERYCHANGESDATA_A QUERYCHANGESDATA;
struct QUERYCHANGESDATA_W
{
DWORD dwSize;
LPCWSTR lpFileName;
DWORD dwChangeType;
LPCWSTR lpLatestName;
};
dwSize 이 구조의 크기(바이트)입니다.
lpFileName 이 항목의 원래 파일 이름입니다.
dwChangeType 다음과 같이 파일의 상태를 나타내는 코드입니다.
코드 | 설명 |
---|---|
SCC_CHANGE_UNKNOWN |
변경된 내용을 알 수 없습니다. |
SCC_CHANGE_UNCHANGED |
이 파일의 이름은 변경되지 않습니다. |
SCC_CHANGE_DIFFERENT |
ID는 다르지만 동일한 이름의 파일이 데이터베이스에 있습니다. |
SCC_CHANGE_NONEXISTENT |
파일이 데이터베이스에 없거나 로컬에 없습니다. |
SCC_CHANGE_DATABASE_DELETED |
데이터베이스에서 삭제된 파일입니다. |
SCC_CHANGE_LOCAL_DELETED |
파일이 로컬로 삭제되었지만 데이터베이스에 파일이 여전히 존재합니다. 확인할 수 없으면 SCC_CHANGE_DATABASE_ADDED 를 반환합니다. |
SCC_CHANGE_DATABASE_ADDED |
파일이 데이터베이스에 추가되었지만 로컬로 존재하지 않습니다. |
SCC_CHANGE_LOCAL_ADDED |
파일이 데이터베이스에 없으며 새 로컬 파일입니다. |
SCC_CHANGE_RENAMED_TO |
파일 이름이 변경되거나 데이터베이스에서 lpLatestName 로 이동되었습니다. |
SCC_CHANGE_RENAMED_FROM |
파일 이름이 변경되었거나 lpLatestName 에서 데이터베이스로 이동되었습니다. 추적하기에 너무 비용이 많이 드는 경우 SCC_CHANGE_DATABASE_ADDED 와 같은 다른 플래그를 반환합니다. |
lpLatestName 이 항목의 현재 파일 이름입니다.