다음을 통해 공유


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 이 항목의 현재 파일 이름입니다.

참고 항목