SccAddFromScc – funkce
Tato funkce umožňuje uživateli vyhledat soubory, které už jsou v systému správy zdrojového kódu, a následně tyto soubory vytvořit jako součást aktuálního projektu. Tato funkce může například získat společný hlavičkový soubor do aktuálního projektu bez kopírování souboru. Návratové pole souborů lplpFileNames
obsahuje seznam souborů, které chce uživatel přidat do projektu integrovaného vývojového prostředí (IDE).
Syntaxe
SCCRTN SccAddFromScc (
LPVOID pvContext,
HWND hWnd,
LPLONG lpnFiles,
LPCSTR** lplpFileNames
);
Parametry
pvContext
[v] Kontextová struktura modulu plug-in správy zdrojového kódu.
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.
lpnFiles
[in, out] Vyrovnávací paměť pro počet přidaných souborů. (To je NULL
v případě, že se uvolní paměť, na kterou lplpFileNames
odkazuje. Podrobnosti najdete v poznámkách.)
lplpFileNames
[in, out] Pole ukazatelů na všechny názvy souborů bez cest k adresářům. Toto pole je přiděleno a uvolněno modulem plug-in správy zdrojového kódu. Pokud lpnFiles
= 1 a lplpFileNames
není NULL
, křestní jméno v poli, na které lplpFileNames
odkazuje, obsahuje cílovou složku.
Návratová 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 | Soubory byly úspěšně umístěny a přidány do projektu. |
SCC_I_OPERATIONCANCELED | Operace byla zrušena bez efektu. |
SCC_I_RELOADFILE | Soubor nebo projekt je potřeba znovu načíst. |
Poznámky
Integrované vývojové prostředí (IDE) volá tuto funkci. Pokud modul plug-in správy zdrojového kódu podporuje zadání místní cílové složky, předá lpnFiles
integrované vývojové prostředí = 1 a předá název místní složky do lplpFileNames
.
Když volání SccAddFromScc
funkce vrátí, modul plug-in má přiřazené hodnoty lpnFiles
a lplpFileNames
přidělení paměti pro pole názvů souborů podle potřeby (všimněte si, že toto přidělení nahradí ukazatel v lplpFileNames
). Modul plug-in správy zdrojového kódu zodpovídá za umístění všech souborů do adresáře uživatele nebo do zadané složky označení. Integrované vývojové prostředí (IDE) pak přidá soubory do projektu integrovaného vývojového prostředí (IDE).
Nakonec integrované vývojové prostředí (IDE) volá tuto funkci podruhé a předává NULL
funkci .lpnFiles
To je interpretováno jako zvláštní signál modulu plug-in správy zdrojového kódu, který uvolní paměť přidělenou pro pole názvu souboru v lplpFileNames``.
lplpFileNames
char ***
je ukazatel. Modul plug-in správy zdrojového kódu umístí ukazatel na pole ukazatelů na názvy souborů, a proto předá seznam standardním způsobem pro toto rozhraní API.
Poznámka:
Počáteční verze rozhraní API VSSCI neposkytly způsob, jak označit cílový projekt pro přidané soubory. Kvůli tomu byla sémantika parametru lplpFIleNames
vylepšena tak, aby byla in/out parametrem, nikoli výstupním parametrem. Pokud je zadán pouze jeden soubor, to znamená hodnota odkazovaná na lpnFiles
= 1, pak první prvek lplpFileNames
obsahuje cílovou složku. Aby bylo možné tyto nové sémantiky použít, integrované vývojové prostředí volá SccSetOption
funkci s parametrem nastaveným nOption
na SCC_OPT_SHARESUBPROJ
. Pokud modul plug-in správy zdrojového kódu nepodporuje sémantiku, vrátí .SCC_E_OPTNOTSUPPORTED
Tím zakážete použití funkce Přidat ze správy zdrojového kódu . Pokud modul plug-in podporuje funkci Přidat ze správy zdrojového kódu (SCC_CAP_ADDFROMSCC
), musí podporovat novou sémantiku a vrátit SCC_I_SHARESUBPROJOK
.