QUERYCHANGESFUNC
Il s'agit d'une fonction de rappel utilisée par l'opération de SccQueryChanges, fonction pour énumérer une collection de noms de fichiers et déterminer l'état de chaque fichier.
La fonction d' SccQueryChanges reçoit une liste de fichiers et un pointeur vers le rappel d' QUERYCHANGESFUNC . Le plug-in contrôle de code source énumère sur la liste donnée et fournit l'état (via ce rappel) pour chaque fichier dans la liste.
Signature
typedef BOOL (*QUERYCHANGESFUNC)(
LPVOID pvCallerData,
QUERYCHANGESDATA * pChangesData
);
Paramètres
pvCallerData
[in] le paramètre d' pvCallerData est passé par l'appelant (IDE) à SccQueryChanges, fonction. Le plug-in contrôle de code source doit faire des suppositions sur le contenu de cette valeur.pChangesData
[in] Pointeur vers une structure de QUERYCHANGESDATA décrivant les modifications apportées à un fichier.
Valeur de retour
L'IDE retourne un code d'erreur approprié :
Valeur |
Description |
---|---|
SCC_OK |
Continuez à traiter. |
SCC_I_OPERATIONCANCELED |
Arrêtez de traitement. |
SCC_E_xxx |
Erreur appropriée dans SCC en doivent cesser de traitement. |
structure de QUERYCHANGESDATA
La structure est passée pour chaque fichier ressemble à ce qui suit :
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
taille de cette structure (en octets).lpFileName
le nom de fichier d'origine pour cet élément.dwChangeType
Le code indiquant l'état du fichier :Code
Description
SCC_CHANGE_UNKNOWN
Ne peut pas déterminer ce qui a changé.
SCC_CHANGE_UNCHANGED
Aucun changement de nom pour ce fichier.
SCC_CHANGE_DIFFERENT
le fichier avec une identité différente, mais le même nom existe dans la base de données.
SCC_CHANGE_NONEXISTENT
le fichier n'existe pas dans la base de données ou localement.
SCC_CHANGE_DATABASE_DELETED
Fichier supprimé de la base de données.
SCC_CHANGE_LOCAL_DELETED
Le fichier supprimé localement mais le fichier existe encore dans la base de données. Si cela ne peut pas être déterminé, SCC_CHANGE_DATABASE_ADDEDde retour.
SCC_CHANGE_DATABASE_ADDED
le fichier ajouté à la base de données mais n'existe pas localement.
SCC_CHANGE_LOCAL_ADDED
Le fichier n'existe pas dans la base de données et est un fichier local.
SCC_CHANGE_RENAMED_TO
Fichier renommé ou déplacé dans la base de données en tant que lpLatestName.
SCC_CHANGE_RENAMED_FROM
fichier renommé ou déplacé dans la base de données d' lpLatestName; s'il est trop coûteux de suivre, retournez une balise différente, telle qu' SCC_CHANGE_DATABASE_ADDED.
lpLatestName
Le nom du fichier en cours pour cet élément.