Procedura: Installare un plug-in controllo del codice sorgente
Creare un plug-in del controllo del codice sorgente comprende tre passaggi:
Creare una DLL con funzioni definite nella sezione di riferimento API di plug-in controllo del codice sorgente di questa documentazione.
Implementare i metodi IVsHierarchyAdviseHierarchyEvents e UnadviseHierarchyEvents per stabilire e disabilitare, rispettivamente, la notifica client gli eventi di struttura senza richiedere la gerarchia di implementare IConnectionPointContainer. Quando le richieste di Visual Studio per, rendono disponibili le interfacce e le finestre di dialogo del plug-in.
Registrare la DLL utilizzando le voci del Registro di sistema appropriate.
Integrazione con Visual Studio
Visual Studio supporta i collegamenti del controllo del codice sorgente conformi al plug-in controllo del codice sorgente API.
Registrare il plug-in controllo del codice sorgente
Prima di un ambiente di sviluppo integrato in (IDE) esecuzione per poter chiamare nel sistema di controllo del codice sorgente, è necessario innanzitutto trovare la DLL di plug-in controllo del codice sorgente che esporta l'API.
Per registrare la DLL di plug-in controllo del codice sorgente
Aggiungere due voci nella chiave HKEY_LOCAL_MACHINE digitare la sottochiave di SOFTWARE che specifica la sottochiave del nome della società seguita dalla sottochiave del nome del prodotto. Il modello viene \SOFTWARE HKEY_LOCAL_MACHINE \[nome della società]\[product name]\[voce] = valore. Le due voci vengono sempre chiamate SCCServerName e SCCServerPath. Ogni è una stringa semplice.
Ad esempio, se il nome della società è Microsoft e il prodotto del controllo del codice sorgente è denominato SourceSafe, il percorso del Registro di sistema HKEY_LOCAL_MACHINE essere \SOFTWARE\Microsoft\SourceSafe. Nella sottochiave, la prima voce, SCCServerName, è una stringa leggibile dall'utente di denominazione del prodotto. La seconda voce, SCCServerPath, è il percorso completo della DLL di plug-in controllo del codice sorgente che l'ide deve connettersi. Di seguito viene riportato le voci del Registro di sistema esempio:
Voce del Registro di sistema di esempio
Valore di esempio
HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\SourceSafe\SCCServerName
Microsoft Visual SourceSafe
HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\SourceSafe\SCCServerPath
c:\vss\win32\ssscc.dll
Nota
Lo SCCServerPath è il percorso completo del plug-in di SourceSafe.Il plug-in controllo del codice sorgente utilizzerà la società e nomi di prodotto diversi ma gli stessi percorsi della voce del Registro di sistema.
Le seguenti voci del Registro di sistema opzionali potranno essere utilizzate per modificare il comportamento del plug-in controllo del codice sorgente. Queste voci vanno nella stessa sottochiave di SccServerName e di SccServerPath.
La voce di HideInVisualStudioregistry può essere utilizzata se non si desidera che il plug-in controllo del codice sorgente venga visualizzato nell'elenco di selezione plug-in di Visual Studio. Questa voce viene inoltre influirà sulla commutazione automatica al plug-in controllo del codice sorgente. Un possibile utilizzo di questa voce è se si fornisce un pacchetto del controllo del codice sorgente che sostituisce il plug-in controllo del codice sorgente ma si desidera semplificare l'utente eseguire la migrazione da tramite il plug-in controllo del codice sorgente al pacchetto del controllo del codice sorgente. Quando il pacchetto del controllo del codice sorgente è installato, impostare questa voce del Registro di sistema, che nasconde il plug-in.
HideInVisualStudio è un valore DWORD e è impostato su 1 per nascondere il plug-in oppure su 0 per visualizzare il plug-in. Se la voce del Registro di sistema non viene visualizzata, il comportamento predefinito è mostrare il plug-in.
La voce del Registro di sistema di DisableSccManager può essere utilizzata per disabilitare o nascondere la voce di menu di avvio <Server del controllo del codice sorgente> che in genere viene visualizzata in file - sottomenu di > Controllo del codice sorgente . selezionando questa opzione di menu chiama Funzione SccRunScc la funzione. Il plug-in controllo del codice sorgente non può supportare un programma esterno e pertanto è possibile disabilitare o addirittura nascondere la voce di menu di avvio .
DisableSccManager è un valore DWORD è impostato su 0 per abilitare l'opzione di menu di avvio <Server del controllo del codice sorgente> , impostare su 1 per disabilitare l'opzione di menu e impostare su 2 nascondere l'opzione di menu. Se questa voce del Registro di sistema non viene visualizzata, il comportamento predefinito è mostrare l'opzione di menu.
Voce del Registro di sistema di esempio
Valore di esempio
HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\SourceSafe\HideInVisualStudio
1
HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\SourceSafe\DisableSccManager
1
Aggiungere la sottochiave, SourceCodeControlProvider, nella chiave HKEY_LOCAL_MACHINE digitare la sottochiave di SOFTWARE.
Nella sottochiave, la voce del Registro di sistema ProviderRegKey è impostata su una stringa che rappresenta la sottochiave che sono stati inseriti nel Registro di sistema nel passaggio 1. Il modello viene \SOFTWARE\SourceCodeControlProvider\ProviderRegKey = SOFTWARE HKEY_LOCAL_MACHINE \[nome della società]\[product name].
Ecco contenuto di esempio per la sottochiave.
Voce del Registro di sistema
Valore di esempio
HKEY_LOCAL_MACHINE \SOFTWARE\SourceCodeControlProvider\ProviderRegKey
SOFTWARE \Microsoft\SourceSafe
Nota
Il plug-in controllo del codice sorgente utilizzerà gli stessi nomi di ingresso e della sottochiave, ma il valore sarà diverso.
Creazione di una sottochiave denominata InstalledSCCProviders nella sottochiave di SourceCodeControlProvider quindi inserire una voce nella sottochiave.
Il nome di questa voce è il nome leggibile dal provider (uguale al valore specificato per la voce di SCCServerName) e il valore è, nuovamente, la sottochiave creata nel passaggio 1. Il modello viene \SOFTWARE\SourceCodeControlProvider\InstalledSCCProviders HKEY_LOCAL_MACHINE \[nome visualizzato] = SOFTWARE \[nome della società]\[product name].
Di seguito è riportato un esempio:
Voce del Registro di sistema di esempio
Valore di esempio
HKEY_LOCAL_MACHINE \SOFTWARE\SourceCodeControlProvider\InstalledSCCProviders\Microsoft Visual SourceSafe
SOFTWARE \Microsoft\SourceSafe
Nota
Possono essere presenti più collegamenti del controllo del codice sorgente registrati in questo modo.Questo è il Visual Studio consente di trovare tutti ai collegamenti in base alle API installati di plug-in controllo del codice sorgente.
Come un IDE trova la DLL
L'ide di Visual Studio sono disponibili due modalità di trovare la DLL di plug-in controllo del codice sorgente:
Trovare il plug-in controllo del codice sorgente predefinito e connettersi a automaticamente.
Trovare tutti i collegamenti registrati di controllo del codice sorgente, da cui l'utente sceglie uno.
Per individuare la DLL nella prima modalità, gli aspetti dell'IDE nella chiave HKEY_LOCAL_MACHINE \Software\SourceCodeControlProvider subkey for the entry ProviderRegKey. Il valore di questi punti di ingresso a un'altra sottochiave. L'ide quindi cerca una voce denominata SccServerPath nella seconda sottochiave sotto HKEY_LOCAL_MACHINE. Il valore di questi punti di ingresso l'ide alla DLL.
Nota
L'ide non carica le DLL dai percorsi relativi, ad esempio.\NewProvider.DLL).Un percorso completo della DLL deve essere specificato (ad esempio, c: \Providers\NewProvider.DLL).Ciò consolida la sicurezza dell'IDE e impedire il caricamento delle DLL plug-in non autorizzati o rappresentati.
Per individuare la DLL nella seconda modalità, gli aspetti dell'IDE nella sottochiave HKEY_LOCAL_MACHINE \Software\SourceCodeControlProvider\InstalledSCCProviders per tutte le voci*.* Ogni voce è un VSPackage GUID. L'ide visualizza un elenco di tali nomi all'utente*.* Quando l'utente sceglie un nome, l'ide trova il valore per il nome di selezione che indica una sottochiave. L'ide rileva una voce denominata SccServerPath nella sottochiave sotto HKEY_LOCAL_MACHINE. Il valore di quello punti di ingresso l'ide alla DLL corretto.
Un plug-in controllo del codice sorgente deve supportare entrambe le modalità di trovare la DLL e, di conseguenza, impostare ProviderRegKey, sovrascrivendo qualsiasi valore precedente. Ancora più importante, deve essere aggiunto all'elenco di InstalledSccProviders in modo che l'utente possa essere una scelta del plug-in controllo del codice sorgente da utilizzare.
Nota
Poiché la chiave HKEY_LOCAL_MACHINE viene utilizzata, ma solo un plug-in controllo del codice sorgente sia registrato come il plug-in controllo del codice sorgente predefinito in un computer specificato (tuttavia, Visual Studio consente agli utenti di determinare quale plug-in controllo del codice sorgente desidera effettivamente da utilizzare per una soluzione particolare).Durante il processo di installazione, controllare che un plug-in controllo del codice sorgente già impostata, in caso affermativo, chiedere all'utente indipendentemente dal fatto che l'impostazione del nuovo plug-in controllo del codice sorgente in cui è installato come predefinito.Durante l'non-installazione, non rimuovere le sottochiavi del Registro di sistema che sono comuni a tutti i collegamenti di controllo del codice sorgente in sottochiave HKEY_LOCAL_MACHINE \SOFTWARE\SourceCodeControlProvider; remove only your particular SCC.
Come l'ide rileva il supporto della versione 1.2/1.3
Come Visual Studio rileva se un plug-in supporta le versioni 1,2 e di plug-in controllo del codice sorgente API funzionalità 1,3? Per dichiarare una funzionalità avanzata, il plug-in controllo del codice sorgente necessario implementare la funzione corrispondente.
Innanzitutto, Visual Studio verifica il valore restituito chiamando Funzione SccGetVersion. Deve essere maggiore o uguale a 1,2.
Successivamente, Visual Studio determina se la nuova funzionalità specifica è supportata esaminando l'argomento di lpSccCaps su Funzione SccInitialize.
Se entrambe le condizioni seguenti, le nuove funzioni supportate nelle versioni 1,2 e 1,3 possono essere chiamati.
Vedere anche
Altre risorse
Introduzione ai collegamenti del controllo del codice sorgente