Uso di un server di origine
Un server di origine consente al debugger di recuperare automaticamente i file di origine corrispondenti alla destinazione corrente. Per usare un server di origine, è necessario eseguire il debug di file binari indicizzati in fase di compilazione e i cui percorsi dei file di origine sono incorporati nei file PDB.
Strumenti di debug per Windows include il server di origine SrcSrv (Srcsrv.exe).
Uso di SrcSrv con un debugger
SrcSrv può essere usato con WinDbg, KD, NTSD o CDB.
Per usare SrcSrv con il debugger, immettere il comando seguente per impostare il percorso di origine su srv*.
.srcfix
È possibile ottenere lo stesso risultato immettendo il comando seguente.
.srcpath srv*
L'impostazione del percorso di origine su srv* indica al debugger che deve recuperare i file di origine dai percorsi specificati nei file di simboli dei moduli di destinazione.
Se si vuole usare SrcSrv e includere anche un elenco di directory nel percorso di origine, usare i punti e virgola per separare srv*
le directory presenti nel percorso.
Ad esempio:
.srcpath srv*;c:\someSourceCode
Se il percorso di origine è impostato come illustrato nell'esempio precedente, il debugger usa prima SrcSrv per recuperare i file di origine dai percorsi specificati nei file di simboli dei moduli di destinazione. Se SrcSrv non è in grado di recuperare un file di origine, il debugger tenta di recuperarlo da c:\someSourceCode. Indipendentemente dal fatto che srv* sia il primo elemento nel percorso o venga visualizzato in un secondo momento, il debugger usa sempre SymSrv prima di eseguire ricerche in qualsiasi altra directory elencata nel percorso.
È anche possibile usare .srcfix+ per aggiungere srv*
al percorso di origine esistente, come illustrato nell'esempio seguente.
3: kd> .srcpath c:\mySource
Source search path is: c:\mySource
3: kd> .srcfix+
Source search path is: c:\mySource;SRV*
Se un file di origine viene recuperato dal server di origine, rimarrà sul disco rigido dopo che la sessione di debug è finita. I file di origine vengono archiviati localmente nella sottodirectory src della home directory (a differenza del server di simboli, il server di origine non specifica una cache locale nella srv*
sintassi stessa). Per impostazione predefinita, la home directory è la directory di installazione del debugger; può essere modificato usando l'estensione !homedir o impostando la variabile di ambiente DBGHELP_HOMEDIR. Se questa sottodirectory non esiste già, verrà creata.
Se si usa il comando open (Open Source File) per aprire un nuovo file di origine tramite SrcSrv, è necessario includere il parametro -m Address.
Per informazioni su come indicizzare le origini o se si prevede di creare un modulo del provider di controllo del codice sorgente personalizzato, vedere SrcSrv.
Uso di AgeStore per ridurre le dimensioni della cache
Tutti i file di origine scaricati da SrcSrv rimarranno sul disco rigido dopo la sessione di debug. Per controllare le dimensioni della cache di origine, è possibile usare lo strumento AgeStore per eliminare i file memorizzati nella cache precedenti a una data specificata o per ridurre il contenuto della cache al di sotto di una dimensione specificata. Per informazioni dettagliate, vedere AgeStore.