QUERYCHANGESFUNC
Essa é uma função de retorno de chamada usada pela operação SccQueryChanges para enumerar uma coleção de nomes de arquivo e determinar o status de cada arquivo.
A SccQueryChanges
função recebe uma lista de arquivos e um ponteiro para o QUERYCHANGESFUNC
retorno de chamada. O plug-in de controle do código-fonte enumera a lista fornecida e fornece status (por meio desse retorno de chamada) para cada arquivo na lista.
Signature
typedef BOOL (*QUERYCHANGESFUNC)(
LPVOID pvCallerData,
QUERYCHANGESDATA * pChangesData
);
Parâmetros
pvCallerData
[em] O pvCallerData
parâmetro passado pelo chamador (o IDE) para SccQueryChanges. O plug-in de controle do código-fonte não deve fazer suposições sobre o conteúdo desse valor.
pChangesData
[em] Ponteiro para uma estrutura QUERYCHANGESDATA Structure que descreve as alterações em um arquivo.
Valor retornado
O IDE retorna um código de erro apropriado:
Valor | Descrição |
---|---|
SCC_OK | Continuar o processamento. |
SCC_I_OPERATIONCANCELED | Pare o processamento. |
SCC_E_xxx | Qualquer erro SCC apropriado deve parar o processamento. |
Estrutura QUERYCHANGESDATA
A estrutura passada para cada arquivo tem a seguinte aparência:
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 Tamanho dessa estrutura (em bytes).
lpFileName O nome do arquivo original para este item.
Código dwChangeType indicando o status do arquivo:
Código | Descrição |
---|---|
SCC_CHANGE_UNKNOWN |
Não sei dizer o que mudou. |
SCC_CHANGE_UNCHANGED |
Nenhuma alteração de nome para este arquivo. |
SCC_CHANGE_DIFFERENT |
Arquivo com uma identidade diferente, mas o mesmo nome existe no banco de dados. |
SCC_CHANGE_NONEXISTENT |
O arquivo não existe no banco de dados ou localmente. |
SCC_CHANGE_DATABASE_DELETED |
Arquivo excluído no banco de dados. |
SCC_CHANGE_LOCAL_DELETED |
Arquivo excluído localmente, mas o arquivo ainda existe no banco de dados. Se isso não puder ser determinado, retorne SCC_CHANGE_DATABASE_ADDED . |
SCC_CHANGE_DATABASE_ADDED |
Arquivo adicionado ao banco de dados, mas não existe localmente. |
SCC_CHANGE_LOCAL_ADDED |
O arquivo não existe no banco de dados e é um novo arquivo local. |
SCC_CHANGE_RENAMED_TO |
Arquivo renomeado ou movido no banco de dados como lpLatestName . |
SCC_CHANGE_RENAMED_FROM |
Arquivo renomeado ou movido no banco de dados de lpLatestName ; se isso for muito caro para rastrear, retorne um sinalizador diferente, como SCC_CHANGE_DATABASE_ADDED . |
lpLatestName O nome de arquivo atual para este item.