Partilhar via


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.

Confira também