SccInitialize, fonction
Cette fonction initialise le contrôle de code source du plug-in et fournit des fonctions et des limites à l'environnement de développement intégré (IDE) (IDE).
SCCRTN SccInitialize (
LPVOID* ppvContext,
HWND hWnd,
LPCSTR lpCallerName,
LPSTR lpSccName,
LPLONG lpSccCaps,
LPSTR lpAuxPathLabel,
LPLONG pnCheckoutCommentLen,
LPLONG pnCommentLen
);
Paramètres
ppvContext
[in] Le plug-in contrôle de code source peut localiser un pointeur vers sa structure de contexte ici.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.lpCallerName
[in] Le nom du programme appelant le plug-in contrôle de code source.lpSccName
[in, out] Mémoire tampon dans laquelle le plug-in contrôle de code source place son propre nom (pour ne pas dépasser SCC_NAME_LEN).lpSccCaps
[out] Retourne les indicateurs de la fonction de la connexion du contrôle de code source.lpAuxPathLabel
[in, out] Mémoire tampon dans laquelle le plug-in contrôle de code source place une chaîne qui décrit le paramètre d' lpAuxProjPath retourné par SccOpenProject, fonction et SccGetProjPath, fonction (pour ne pas dépasser SCC_AUXLABEL_LEN).pnCheckoutCommentLen
[out] Retourne la longueur maximale autorisée pour un commentaire d'extraction.pnCommentLen
[out] Retourne la longueur maximale autorisée pour d'autres commentaires.
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 |
initialisation de contrôle de code source réussie. |
SCC_E_INITIALIZEFAILED |
le système n'a pas pu être initialisé. |
SCC_E_NOTAUTHORIZED |
N'est pas autorisée à exécuter l'opération spécifiée. |
SCC_E_NONSPECFICERROR |
échec non spécifique ; le système de contrôle de code source n'a pas été initialisé. |
Notes
L'IDE appelle cette fonction lorsqu'il charge d'abord le plug-in contrôle de code source. Il permet à l'IDE pour passer certaines informations, telles que le nom de l'appelant, au plug-in. L'IDE obtient également certaines informations ultérieurement telles que la longueur maximale autorisée pour les commentaires et les fonctions de la connexion.
les points d' ppvContext à un pointeur d' NULL . Le plug-in contrôle de code source peut allouer une structure pour sa propre magasin d'utiliser et un pointeur à cette structure dans ppvContext. L'IDE passera ce pointeur à chaque autre fonction API de VSSCI, permettant au plug-in pour enregistrer les informations de contexte disponibles sans recourir au stockage global et à plusieurs instances de prise en charge du plug-in. Cette structure doit être libérée lorsque SccUninitialize, fonction est appelé.
Les paramètres d' lpCallerName et d' lpSccName permettent à l'IDE et au plug-in contrôle de code source pour échanger des noms. Ces noms peuvent être utilisés simplement pour les distinguer plusieurs instances, ou peuvent en fait apparaître dans les menus ou les boîtes de dialogue.
Le paramètre d' lpAuxPathLabel est une chaîne utilisée comme commentaire pour identifier le chemin d'accès au projet auxiliaire stocké dans le fichier solution et passé au plug-in contrôle de code source dans un appel à SccOpenProject, fonction. Visual SourceSafe projet de visual SourceSafe utilise chaîne « : » ; l'autre plug-ins de contrôle de code source doit s'abstenir d'utiliser cette chaîne particulière.
Le paramètre d' lpSccCaps présente le plug-in contrôle de code source un emplacement pour stocker des bitflags indiquant les fonctions de la connexion. (Pour une liste complète de bitflags de fonction, consultez Indicateurs de capacité). Par exemple, si les plans de plug-in pour écrire les résultats dans appelant-fournissaient la fonction de rappel, le plug-in définirait le bit SCC_CAP_TEXTOUT de fonction. Cela signalerait l'IDE pour créer une fenêtre des résultats de contrôle de version.