QUERYCHANGESFUNC
Se trata de una función de devolución de llamada que usa la operación SccQueryChanges para enumerar una colección de nombres de archivo y determinar el estado de cada archivo.
La SccQueryChanges
función recibe una lista de archivos y un puntero a la QUERYCHANGESFUNC
devolución de llamada. El complemento de control de código fuente enumera la lista especificada y proporciona el estado (a través de esta devolución de llamada) para cada archivo de la lista.
Signature
typedef BOOL (*QUERYCHANGESFUNC)(
LPVOID pvCallerData,
QUERYCHANGESDATA * pChangesData
);
Parámetros
pvCallerData
[in] Parámetro pvCallerData
pasado por el autor de la llamada (el IDE) a SccQueryChanges. El complemento de control de código fuente no debe hacer suposiciones sobre el contenido de este valor.
pChangesData
[in] Puntero a una estructura QUERYCHANGESDATA que describe los cambios en un archivo.
Valor devuelto
El IDE devuelve un código de error adecuado:
Value | Descripción |
---|---|
SCC_OK | Continúe el procesamiento. |
SCC_I_OPERATIONCANCELED | Detiene el procesamiento. |
SCC_E_xxx | Cualquier error de SCC adecuado debe detener el procesamiento. |
QUERYCHANGESDATA (estructura)
La estructura pasada para cada archivo es similar a la siguiente:
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 Size de esta estructura (en bytes).
lpFileName Es el nombre de archivo original de este elemento.
dwChangeType Code que indica el estado del archivo:
Código | Descripción |
---|---|
SCC_CHANGE_UNKNOWN |
No se puede saber qué ha cambiado. |
SCC_CHANGE_UNCHANGED |
No hay cambios de nombre para este archivo. |
SCC_CHANGE_DIFFERENT |
El archivo con una identidad diferente, pero el mismo nombre existe en la base de datos. |
SCC_CHANGE_NONEXISTENT |
El archivo no existe en la base de datos o localmente. |
SCC_CHANGE_DATABASE_DELETED |
Archivo eliminado en la base de datos. |
SCC_CHANGE_LOCAL_DELETED |
El archivo se eliminó localmente, pero el archivo todavía existe en la base de datos. Si no se puede determinar, devuelva SCC_CHANGE_DATABASE_ADDED . |
SCC_CHANGE_DATABASE_ADDED |
Archivo agregado a la base de datos, pero no existe localmente. |
SCC_CHANGE_LOCAL_ADDED |
El archivo no existe en la base de datos y es un nuevo archivo local. |
SCC_CHANGE_RENAMED_TO |
El archivo ha cambiado el nombre o se ha movido en la base de datos como lpLatestName . |
SCC_CHANGE_RENAMED_FROM |
Se ha cambiado el nombre del archivo o se ha movido en la base de datos de lpLatestName ; si esto es demasiado caro para realizar el seguimiento, devuelva una marca diferente, como SCC_CHANGE_DATABASE_ADDED . |
lpLatestName Es el nombre de archivo actual de este elemento.