SccInitialize, funkcja
Ta funkcja inicjuje wtyczkę kontroli źródła i zapewnia możliwości i ograniczenia zintegrowanego środowiska projektowego (IDE).
Składnia
SCCRTN SccInitialize (
LPVOID* ppvContext,
HWND hWnd,
LPCSTR lpCallerName,
LPSTR lpSccName,
LPLONG lpSccCaps,
LPSTR lpAuxPathLabel,
LPLONG pnCheckoutCommentLen,
LPLONG pnCommentLen
);
Parametry
ppvContext
[in] Wtyczka kontroli źródła może umieścić wskaźnik w jego strukturze kontekstu tutaj.
hWnd
[in] Dojście do okna środowiska IDE, którego wtyczka kontroli źródła może używać jako elementu nadrzędnego dla wszystkich okien dialogowych, które udostępnia.
lpCallerName
[in] Nazwa programu wywołującego wtyczkę kontroli źródła.
lpSccName
[in, out] Bufor, w którym wtyczka kontroli źródła umieszcza własną nazwę (nie przekracza SCC_NAME_LEN
).
lpSccCaps
[out] Zwraca flagi możliwości wtyczki kontroli źródła.
lpAuxPathLabel
[in, out] Bufor, w którym wtyczka kontroli źródła umieszcza ciąg, który opisuje lpAuxProjPath
parametr zwrócony przez SccOpenProject i SccGetProjPath (nie do przekroczenia SCC_AUXLABEL_LEN
).
pnCheckoutCommentLen
[out] Zwraca maksymalną dopuszczalną długość komentarza do wyewidencjonowania.
pnCommentLen
[out] Zwraca maksymalną dozwoloną długość dla innych komentarzy.
Wartość zwracana
Implementacja wtyczki kontroli źródła tej funkcji powinna zwrócić jedną z następujących wartości:
Wartość | Opis |
---|---|
SCC_OK | Inicjowanie kontroli źródła powiodło się. |
SCC_E_INITIALIZEFAILED | Nie można zainicjować systemu. |
SCC_E_NOTAUTHORIZED | Użytkownik nie może wykonać określonej operacji. |
SCC_E_NONSPECFICERROR | Niepowodzeń nieokreślonych; system kontroli źródła nie został zainicjowany. |
Uwagi
Środowisko IDE wywołuje tę funkcję, gdy po raz pierwszy ładuje wtyczkę kontroli źródła. Dzięki temu środowisko IDE może przekazać pewne informacje, takie jak nazwa wywołującego, do wtyczki. Środowisko IDE pobiera również pewne informacje, takie jak maksymalna dozwolona długość komentarzy i możliwości wtyczki.
NULL
Wskazuje ppvContext
wskaźnik. Wtyczka kontroli źródła może przydzielić strukturę do własnego użycia i zapisać wskaźnik do tej struktury w pliku ppvContext
. Środowisko IDE przekaże ten wskaźnik do każdej innej funkcji interfejsu API VSSCI, dzięki czemu wtyczka będzie mieć dostępne informacje kontekstowe bez uciekania się do magazynu globalnego i obsługi wielu wystąpień wtyczki. Ta struktura powinna zostać cofnięta po wywołaniu interfejsu SccUninitialize .
Parametry lpCallerName
i lpSccName
umożliwiają środowisko IDE i wtyczkę kontroli źródła do wymiany nazw. Te nazwy mogą być używane po prostu do rozróżnienia między wieloma wystąpieniami lub mogą być wyświetlane w menu lub oknach dialogowych.
Parametr lpAuxPathLabel
jest ciągiem używanym jako komentarz do identyfikowania pomocniczej ścieżki projektu przechowywanej w pliku rozwiązania i przekazywanej do wtyczki kontroli źródła w wywołaniu do SccOpenProject. Źródło wizualizacji Sejf używa ciągu "Source Sejf Project:"; inne wtyczki kontroli źródła powinny powstrzymać się od używania tego określonego ciągu.
Parametr lpSccCaps
zapewnia wtyczkę kontroli źródła do przechowywania bitflags wskazujących możliwości wtyczki. (Aby uzyskać pełną listę możliwości bitflags, zobacz Flagi możliwości). Jeśli na przykład wtyczka planuje zapisywać wyniki w funkcji wywołania zwrotnego dostarczonego przez obiekt wywołujący, wtyczka ustawiłaby bit możliwości SCC_CAP_TEXTOUT. Oznaczałoby to, że środowisko IDE utworzy okno dla wyników kontroli wersji.