SccInitialize – funkce
Tato funkce inicializuje modul plug-in správy zdrojového kódu a poskytuje možnosti a omezení integrovaného vývojového prostředí (IDE).
Syntaxe
SCCRTN SccInitialize (
LPVOID* ppvContext,
HWND hWnd,
LPCSTR lpCallerName,
LPSTR lpSccName,
LPLONG lpSccCaps,
LPSTR lpAuxPathLabel,
LPLONG pnCheckoutCommentLen,
LPLONG pnCommentLen
);
Parametry
ppvContext
[v] Modul plug-in správy zdrojového kódu může sem umístit ukazatel na jeho kontextovou strukturu.
hWnd
[v] Popisovač okna integrovaného vývojového prostředí(IDE), které modul plug-in správy zdrojového kódu může použít jako nadřazený prvek pro všechna dialogová okna, která poskytuje.
lpCallerName
[v] Název programu, který volá modul plug-in správy zdrojového kódu.
lpSccName
[in, out] Vyrovnávací paměť, ve které modul plug-in správy zdrojového kódu vloží vlastní název (nesmí být překročen SCC_NAME_LEN
).
lpSccCaps
[ven] Vrátí příznaky modulu plug-in správy zdrojového kódu.
lpAuxPathLabel
[in, out] Vyrovnávací paměť, kde modul plug-in správy zdrojového kódu vloží řetězec, který popisuje lpAuxProjPath
parametr vrácený SccOpenProject a SccGetProjPath (není překročen SCC_AUXLABEL_LEN
).
pnCheckoutCommentLen
[ven] Vrátí maximální povolenou délku komentáře k pokladně.
pnCommentLen
[ven] Vrátí maximální povolenou délku pro ostatní komentáře.
Vrácená hodnota
Očekává se, že implementace modulu plug-in správy zdrojového kódu této funkce vrátí jednu z následujících hodnot:
Hodnota | Popis |
---|---|
SCC_OK | Inicializace správy zdrojového kódu byla úspěšná. |
SCC_E_INITIALIZEFAILED | Systém nelze inicializovat. |
SCC_E_NOTAUTHORIZED | Uživatel nemůže provést zadanou operaci. |
SCC_E_NONSPECFICERROR | Nespecifické selhání; systém správy zdrojového kódu nebyl inicializován. |
Poznámky
Integrované vývojové prostředí volá tuto funkci při prvním načtení modulu plug-in správy zdrojového kódu. Umožňuje integrovanému vývojovému prostředí (IDE) předat do modulu plug-in určité informace, například název volajícího. Integrované vývojové prostředí také vrací určité informace, jako je maximální povolená délka komentářů a možností modulu plug-in.
Odkazuje ppvContext
na NULL
ukazatel. Modul plug-in správy zdrojového kódu může přidělit strukturu pro vlastní použití a uložit ukazatel na tuto strukturu v ppvContext
. Integrované vývojové prostředí (IDE) předá tento ukazatel všem ostatním funkcím rozhraní API VSSCI, což modulu plug-in umožní mít k dispozici kontextové informace, aniž by se museli uchylovat k globálnímu úložišti a podporovat více instancí modulu plug-in. Tato struktura by měla být uvolněna při zavolání SccUninitialize .
lpSccName
Parametry lpCallerName
umožňují integrované vývojové prostředí (IDE) a modul plug-in správy zdrojového kódu vyměňovat názvy. Tyto názvy mohou být použity jednoduše k rozlišení mezi více instancemi nebo se mohou ve skutečnosti zobrazovat v nabídkách nebo dialogových oknech.
Parametr lpAuxPathLabel
je řetězec použitý jako komentář k identifikaci pomocné cesty projektu, která je uložena v souboru řešení a předán modulu plug-in správy zdrojového kódu v volání SccOpenProject. Visual Source Sejf používá řetězec "Source Sejf Project:"; jiné moduly plug-in správy zdrojového kódu by neměly používat tento konkrétní řetězec.
Tento lpSccCaps
parametr dává modulu plug-in správy zdrojového kódu místo pro ukládání bitflags označující možnosti modulu plug-in. (Úplný seznam funkcí bitflags najdete v tématu Příznaky schopností). Pokud například modul plug-in plánuje zapisovat výsledky do funkce zpětného volání poskytované volajícím, modul plug-in nastaví bit funkcí SCC_CAP_TEXTOUT. Toto by signalizovalo integrované vývojové prostředí (IDE) k vytvoření okna pro výsledky správy verzí.