Partager via


SccAddFromScc, fonction

Cette fonction permet à l'utilisateur pour la rechercher les fichiers qui se trouvent déjà dans le système de contrôle de code source et faire ensuite à ceux la pièce de fichiers du projet en cours. Par exemple, cette fonction peut entrer un fichier d'en-tête commun vers le projet actuel sans copier le fichier. Le choix de retour de fichiers, lplpFileNames, contient la liste des fichiers que l'utilisateur souhaite ajouter à l'IDE le projet.

SCCRTN SccAddFromScc (
   LPVOID   pvContext,
   HWND     hWnd,
   LPLONG   lpnFiles,
   LPCSTR** lplpFileNames
);

Paramètres

  • pvContext
    [in] La structure du plug-in du contexte de contrôle de code source.

  • hWnd
    [in] Un handle de la fenêtre IDE que le plug-in contrôle de code source peut utiliser en tant que parent pour toutes les boîtes de dialogue qu'elle fournit.

  • lpnFiles
    [in, out] Une mémoire tampon pour le nombre de fichiers qui sont ajoutés dans. (C'est NULL si la mémoire désignée par lplpFileNames doit être libérée. Voir notes pour plus de détails.)

  • lplpFileNames
    [in, out] Un tableau de pointeurs vers tous les noms de fichiers sans chemins d'accès aux répertoires. Ce tableau est allouée et libérée par le plug-in contrôle de code source. Si lpnFiles = 1 et lplpFileNames n'est pas NULL, le prénom du tableau désignée par lplpFileNames contient le dossier de destination.

Valeur de retour

Il est recommandé que l'implémentation du plug-in du contrôle de code source de cette fonction retourne une des valeurs suivantes :

Valeur

Description

SCC_OK

Les fichiers ont été correctement localisés et ajoutés au projet.

SCC_I_OPERATIONCANCELED

L'opération a été annulée sans aucun effet.

SCC_I_RELOADFILE

un fichier ou un projet doit être rechargé.

Notes

L'IDE appelle cette fonction. Si le plug-in contrôle de code source prend en charge spécifier un dossier de destination locale, l'IDE passe lpnFiles = 1 et passe le nom du dossier local dans lplpFileNames.

Lorsque l'appel à la fonction d' SccAddFromScc retourne, le plug-in a assigné des valeurs à lpnFiles et à lplpFileNames, allouant la mémoire pour le tableau de nom de fichier selon les besoins (notez que cette allocation remplace le pointeur dans lplpFileNames). Le plug-in contrôle de code source est chargé de placer tous les fichiers dans le répertoire d'utilisateur ou dans le dossier spécifié de désignation. L'IDE ajoute ensuite les fichiers au projet de l'IDE.

Enfin, l'IDE appelle cette fonction une deuxième fois, en passant NULL pour lpnFiles. Cela est interprète comme un signal spécial par le plug-in contrôle de code source pour libérer la mémoire allouée au tableau de nom de fichier dans lplpFileNames.

lplpFileNames est un pointeur d' char *** . Le plug-in contrôle de code source plutôt un pointeur vers un tableau de pointeurs vers des noms de fichiers, et en passant la liste de la méthode standard pour cette API.

Notes

Les premières versions de l'API de VSSCI n'ont pas fourni un moyen d'indiquer le projet cible pour les fichiers ajoutés.Pour ce faire, la sémantique du paramètre d' lplpFIleNames ont été améliorées pour en faire un paramètre en entrée/sortie plutôt qu'un paramètre de sortie.Si un seul fichier unique est spécifié, c. autrement dit., la valeur désignée par lpnFiles = 1, le premier élément d' lplpFileNames contient le dossier cible.Pour utiliser ces la nouvelle syntaxe, l'IDE appelle la fonction d' SccSetOption avec le jeu de paramètres d' nOptionà SCC_OPT_SHARESUBPROJ.Si un plug-in contrôle de code source ne prend pas en charge la sémantique, il retourne SCC_E_OPTNOTSUPPORTED.Faire désactive donc l'utilisation de la fonctionnalité d' ajoutez du contrôle de code source .Si un plug-in prend en charge la fonctionnalité d' ajoutez du contrôle de code source (SCC_CAP_ADDFROMSCC), il doit prendre en charge la sémantique nouveaux et retournent SCC_I_SHARESUBPROJOK.

Voir aussi

Référence

SccSetOption, fonction

Concepts

Fonctions API des plug-ins de contrôle de code source