Condividi tramite


Funzione SccDiff

Questa funzione visualizzato o facoltativamente solo controlli per) le differenze tra il file corrente del disco locale) e la relativa versione archiviati l'ultimo nel sistema di controllo del codice sorgente.

SCCRTN SccDiff(
   LPVOID    pvContext,
   HWND      hWnd,
   LPCSTR    lpFileName,
   LONG      fOptions,
   LPCMDOPTS pvOptions
);

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.

  • lpFileName
    [in] Il nome file per il quale la differenza è obbligatorio.

  • fOptions
    [in] Flag del comando. Vedere le note per i dettagli.

  • pvOptions
    [in] Opzioni spina-in-specifiche del controllo del codice sorgente.

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

La copia di lavoro e la versione del server sono identiche.

SCC_I_FILESDIFFERS

La copia di lavoro è diversa da quella nel controllo del codice sorgente.

SCC_I_RELOADFILE

un file o un progetto deve essere ricaricatoe.

SCC_E_FILENOTCONTROLLED

Il file non è incluso nel controllo del codice sorgente.

SCC_E_NOTAUTHORIZED

L'utente non è autorizzato a eseguire questa operazione.

SCC_E_ACCESSFAILURE

Si è verificato un problema che accede al sistema di controllo del codice sorgente, probabilmente a causa di problemi di conflitto o della rete. Un tentativo è consigliato.

SCC_E_NONSPECIFICERROR

errore non specifico; la differenza del file non è stata recuperata.

SCC_E_FILENOTEXIST

Il file locale non è stato trovato.

Note

La funzione presenta due scopi diversi. Per impostazione predefinita, viene visualizzato un elenco delle modifiche in un file. Il plug-in controllo del codice sorgente visualizzata la propria finestra, in qualsiasi formato sceglie, per visualizzare le differenze tra il file sul disco e la versione più recente del file nel controllo del codice sorgente.

In alternativa, l'ide può essere necessario semplicemente di determinare se un file è stato modificato. Ad esempio, l'ide può essere necessario determinare se è possibile estrarre un file senza informare l'utente. In tal caso, l'ide passa nel flag di SCC_DIFF_CONTENTS . Il plug-in controllo del codice sorgente necessario archiviare il file su disco, byte da byte, con il file inclusi nel controllo del codice sorgente e restituire un valore che indica se i due file siano diverse senza visualizzare alcuna modifica all'utente.

Per ottimizzare le prestazioni, il plug-in controllo del codice sorgente possibile utilizzare un'alternativa basata su un checksum o timestamp anziché confronto byte per byte chiamato da SCC_DIFF_CONTENTS: questi tipo di confronto sono ovviamente più veloci ma meno affidabili. Non tutti i sistemi di controllo del codice sorgente possono supportare questi metodi di confronto alternativi e il plug-in può essere necessario eseguire il fallback a un confronto del contenuto. Tutti i collegamenti del controllo del codice sorgente devono, al minimo, supportare un confronto del contenuto.

Nota

I flag rapidi di differenza si escludono a vicenda.È valido non passare flag, ma non è valido passare contemporaneamente più di uno.SCC_DIFF_QUICK_DIFF, che è una maschera che combina tutti i flag, può essere utilizzato per il test, ma non deve essere mai passato come parametro.

fOption

Significato

SCC_DIFF_IGNORECASE

Confronto senza distinzione tra maiuscole e minuscole (può essere utilizzata per rapidamente o la differenza visiva).

SCC_DIFF_IGNORESPACE

Ignora lo spazio vuoto (può essere utilizzata per rapidamente o la differenza visiva).

SCC_DIFF_QD_CONTENTS

Confronta automaticamente il file, byte da byte.

SCC_DIFF_QD_CHECKSUM

Confronta automaticamente il file tramite un checksum una volta supportato. Se non supportato, rientra in un confronto del contenuto.

SCC_DIFF_QD_TIME

Confronta automaticamente il file tramite il timestamp una volta supportato. Se non supportato, rientra in un confronto del contenuto.

Vedere anche

Concetti

Funzioni API del plug-in del controllo del codice sorgente