Condividi tramite


Funzione SccAddFromScc

Questa funzione consente di spostarsi per i file già presenti nel sistema di controllo del codice sorgente e in seguito fanno parte dei file del progetto corrente. Ad esempio, questa funzione può immettere un file di intestazione comune nel progetto corrente senza dover copiare il file. La matrice di ritorno dei file, lplpFileNames, contiene l'elenco dei file che desidera aggiungere al progetto dell'IDE.

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

Parametri

  • pvContext
    [in] La struttura del contesto di plug-in controllo del codice sorgente.

  • hWnd
    [in] Un handle di finestra IDE che il plug-in controllo del codice sorgente possibile utilizzare come padre di tutte le finestre di dialogo che garantiscono.

  • lpnFiles
    [in, out] Un buffer per il numero di file che aggiungono in. (Si tratta di NULL se la memoria indicata da lplpFileNames deve essere rilasciata. Vedere le note per i dettagli.)

  • lplpFileNames
    [in, out] Una matrice di puntatori a tutti i nomi file senza percorsi di directory. Questa matrice viene allocata e liberata dal plug-in controllo del codice sorgente. Se lpnFiles = 1 e lplpFileNames non è NULL, il nome della matrice indicata da lplpFileNames contiene la cartella di destinazione.

Valore restituito

L'implementazione di plug-in controllo del codice sorgente di questa funzione è previsto che restituisca uno dei seguenti valori:

Valore

Descrizione

SCC_OK

I file correttamente sono stati individuati e vengono aggiunti al progetto.

SCC_I_OPERATIONCANCELED

L'operazione è stata annullata senza alcun effetto.

SCC_I_RELOADFILE

un file o un progetto deve essere ricaricatoe.

Note

L'ide chiama la funzione. Se il plug-in controllo del codice sorgente supporta specificare una cartella di destinazione locale, l'ide passa lpnFiles = 1 e passa il nome della cartella locale in lplpFileNames.

Quando la chiamata alla funzione restituisca un risultato di SccAddFromScc , il plug-in assegnati valori a lpnFiles e a lplpFileNames, allocare in base alle esigenze la memoria per la matrice di nome file (si noti che questa allocazione sostituisce il puntatore in lplpFileNames). Il plug-in controllo del codice sorgente è responsabile di memorizzare i file nella directory dell'utente o della cartella specificata di stile. L'ide aggiungere i file al progetto dell'IDE.

Infine, l'ide chiama la funzione per la seconda volta, passando in NULL per lpnFiles. Ciò viene interpretata come segnale speciale dal plug-in controllo del codice sorgente per rilasciare la memoria allocata per la matrice dei nomi file in lplpFileNames.

lplpFileNames è un puntatore di char *** . Il plug-in controllo del codice sorgente appoggia un puntatore a una matrice di puntatori ai nomi file, quindi passando l'elenco in modalità standard per questa API.

Nota

Le versioni precedenti di VSSCI API non hanno fornito un modo per indicare il progetto di destinazione per i file aggiunti.Per rispondere a questa esigenza, la semantica del parametro di lplpFIleNames è stata migliorata impostarla come parametro in/out anziché un parametro di output.Se un solo file specificato, ovvero, il valore puntato da lpnFiles = 1, il primo elemento di lplpFileNames contiene la cartella di destinazione.Per utilizzare questo la nuova semantica, l'ide chiama la funzione di SccSetOption con il parametro di nOptionimpostato su SCC_OPT_SHARESUBPROJ.Se un plug-in controllo del codice sorgente non supporta la semantica, restituisce SCC_E_OPTNOTSUPPORTED.Questa operazione consente di disabilitare l'utilizzo della funzionalità di Aggiungere dal controllo del codice sorgente .Se un plug-in supporta la funzionalità di Aggiungere dal controllo del codice sorgente (SCC_CAP_ADDFROMSCC), deve supportare la nuova semantica e ritorno SCC_I_SHARESUBPROJOK.

Vedere anche

Riferimenti

Funzione SccSetOption

Concetti

Funzioni API del plug-in del controllo del codice sorgente