QUERYCHANGESFUNC
Si tratta di una funzione di callback utilizzata Funzione SccQueryChanges dall'operazione per enumerare una raccolta di nomi file e per determinare lo stato di ogni file.
La funzione di SccQueryChanges viene fornito un elenco di file e un puntatore al callback di QUERYCHANGESFUNC . Il plug-in controllo del codice sorgente enumera sopra l'elenco specificato e viene fornito lo stato (tramite questo callback) per ogni file nell'elenco.
Signature
typedef BOOL (*QUERYCHANGESFUNC)(
LPVOID pvCallerData,
QUERYCHANGESDATA * pChangesData
);
Parametri
pvCallerData
[in] Il parametro di pvCallerData passato dal chiamante (IDE). Funzione SccQueryChanges Il plug-in controllo del codice sorgente non deve fare ipotesi relative al contenuto di questo valore.pChangesData
[in] Puntatore QUERYCHANGESDATA a una struttura che descrive le modifiche in un file.
Valore restituito
L'ide restituisce un codice di errore appropriato:
Valore |
Descrizione |
---|---|
SCC_OK |
Continuare a sviluppare. |
SCC_I_OPERATIONCANCELED |
L'elaborazione di arresto. |
SCC_E_xxx |
Qualsiasi errore appropriato di SCC deve arrestare l'elaborazione. |
struttura di QUERYCHANGESDATA
La struttura viene passato per l'aspetto di ogni file al seguente:
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
Dimensione della struttura (in byte).lpFileName
il nome file originale per questo elemento.dwChangeType
Codice che indica lo stato del file:Codice
Descrizione
SCC_CHANGE_UNKNOWN
Non può stabilire modifiche apportate.
SCC_CHANGE_UNCHANGED
Nessun le modifiche del nome per il file.
SCC_CHANGE_DIFFERENT
Il file con un'identità diversa, ma lo stesso nome è presente nel database.
SCC_CHANGE_NONEXISTENT
Il file non esiste nel database o localmente.
SCC_CHANGE_DATABASE_DELETED
File eliminato nel database.
SCC_CHANGE_LOCAL_DELETED
Il file eliminato localmente ma il file esiste ancora nel database. Se questa operazione non è possibile SCC_CHANGE_DATABASE_ADDEDdeterminato e di ritorno.
SCC_CHANGE_DATABASE_ADDED
Il file aggiunto al database ma non esiste in locale.
SCC_CHANGE_LOCAL_ADDED
Il file non esiste nel database e è un nuovo file locale.
SCC_CHANGE_RENAMED_TO
File rinominato o spostato nel database come lpLatestName.
SCC_CHANGE_RENAMED_FROM
File rinominato o spostato nel database da lpLatestName; se questo è troppo dispendioso rilevare, restituire un flag diverso, come SCC_CHANGE_DATABASE_ADDED.
lpLatestName
il nome file corrente per questo elemento.