2009-07-27 9 views
9

Vorrei entrare nel codice sorgente di Microsoft ma non ci riesco.Come posso accedere al codice sorgente di .NET Framework di Microsoft?

Ho seguito le istruzioni allo Configuring Visual Studio for Debugging. In particolare, ho disabilitato "Abilita solo il mio codice" e abilitato "Abilitato lo stepping di origine di .NET Framework". Infine, imposta la posizione del simbolo di origine su "http://referencesource.microsoft.com/symbols".

Tuttavia, quando faccio doppio clic su un elemento frame nello stack, ottengo un codice assembler, non un codice C#. Anche la voce di menu "vai al codice sorgente" è disabilitata.

Sto usando Visual Studio 2008 SP1 e .NET 3.5 SP1. Ho creato una nuova cartella per le cose scaricate. Ottengo alcuni file pdb ma nessun file C#.

Ho guardato Configuring Visual Studio to Debug .NET Framework Source Code e ho installato il percorso. Non fa differenza. Sto cercando il codice sorgente di WPF. Il pdb viene scaricato così sembra che Microsoft supporti quelli.

C'è un trucco per risolvere questo problema?

+1

Possibile duplicato di [Come eseguire il debug tramite il codice sorgente di .NET Framework?] (Http://stackoverflow.com/questions/373796/how-to-debug-through-net-framework-source-code) –

+1

Questo ha è stato chiesto un paio di volte: forse una di queste risposte aiuterà - http://stackoverflow.com/questions/373796/how-to-debug-through-net-framework-source-code - http: // stackoverflow. it/questions/561724/can not-step-in-net-framework-source-with-vs2008-sp1 –

risposta

2

Non tutte le parti di .NET framework è disponibile come fonte di riferimento, ma le parti che sono (e passi per ottenerlo attivo e funzionante) è descritta nel blog di Shawn Burke, Configuring Visual Studio to Debug .NET Framework Source Code.

Aggiornamento: Hmm. È rotto anche sulla mia macchina, anche se funzionava. Strano.

+0

Grazie per la risposta Poiché posso scaricare il pdb, suppongo che Microsoft supporti questa parte del framework (WPF). Ho visto il collegamento, installato la patch, nessuna differenza. –

+0

Hmm, hai ragione. Funzionava sulla mia macchina ma non l'ho usata per un po '. Quando ho provato oggi, non riesco a farlo funzionare. Scarica correttamente i PDB, ma restituisce un errore "codice sorgente non disponibile" ogni volta che provo a inserire il codice del framework ... Strano. Credo che la risposta di gix sia la spiegazione - versioni non corrispondenti e simboli obsoleti sul server di origine di riferimento ... – KristoferA

3

Per quanto ho osservato .NET framework, fare un passo con la fonte di riferimento funziona perfettamente con le guide che si trovano ovunque. Con VS SP1 non è nemmeno necessario aggiungere il percorso al server di origine di riferimento.

Ma il problema sono versioni non corrispondenti. Gli assembly framework sono stati aggiornati con .NET 3.5 SP1, Vista SP2, Windows 7, ... ma i PDB di origine di riferimento non sono stati resi disponibili. Lo corresponding reference source forum sembra abbastanza morto. Ricordo di aver letto che ci sono voluti un po 'di più per spingere i simboli iniziali perché hanno costruito un'infrastruttura che permettesse loro di spingere rapidamente le nuove versioni. O questo non è mai successo o non lo usano.

+0

Sto usando .NET 3.5 SP1. Stai dicendo che non posso usare il debug del codice framework? –

Problemi correlati