Comment activer “Enable .NET Framework source marcher”?
Mise à jour le 22 Février 2013: Le Microsoft Connect entrée a note de Alok Shriram (Gestionnaire de Programme de la Classe de Base des Bibliothèques, des .NET Framework) que le problème devrait être résolu. La connexion d'entrée est marqué comme Résolu (Fixe):
Ce problème devrait être résolu. Nous avons publié une mise à jour des sources de référence.
S'il vous plaît laissez-nous savoir dans le cas où votre problème n'est toujours pas résolu.
An et demi.
Liens Bonus
-
Fil sur Microsoft Sociale qui a été en cours depuis un an et demi, nous demandant quand il sera fixé.
Question D'Origine
Comment puis-je activer .NET framework source de marcher dans Visual Studio 2010?
Note: Cette question est un élément d'un ensemble plus vaste:
- .NET 2.0 WinForm: Soutenir la DPI et de la Police par Défaut des Changements
- WinForms contrôles ne sont pas à l'échelle lors de ScaleControl
- VS2010: Comment faire pour activer "Enable .NET Framework source de gué"?
- Visual Studio 2010 Professional: Comment accéder à des Modules de fenêtre?
- Visual Studio 2010: Propriétés.Paramètres rompu après le retargetting projet .NET Framework 3.5
Visual Studio 2010 est livré avec une nouvelle fonctionnalité:
- Outils, Options, Le Débogage, Le Général, Activer .NET Framework source de gué
En suivant les instructions sur la page MSDN Comment faire pour Déboguer .NET Framework Source:
À activer .NET Framework source de débogage
Sur le Outils menu, cliquez sur Options.
Dans le Options boîte de dialogue, cliquez sur le de Débogage catégorie.
Dans le Général zone, sélectionnez les cases à cocher suivantes:
- Activer .NET Framework source de gué
- Activer le serveur source de soutien
Je fais ceci:
Note: il est à noter, comme la page MSDN notes, et comme j'ai remarqué que la vérification Activer .NET Framework source de gué automatiquement décochez **Activer uniquement Mon Code (Géré uniquement). J'ai aussi activé les messages de diagnostic du serveur source de soutien.
L'activation de ces options de définir automatiquement un symbole cache d'emplacement de téléchargement pour moi:
Note: Le Serveur de symboles Microsoft entrée est déjà présent (et ne peut pas être supprimé).
La page MSDN dit de charger les symboles:
À la charge du Cadre de symboles à l'aide de la fenêtre Modules
Dans le Modules fenêtre, cliquez-droit sur un module pour les symboles qui ne sont pas chargés. Vous pouvez dire si les symboles sont chargés ou non en regardant le Symboles de Statut colonne.
Point de les Symboles de Charge De et cliquez sur Microsoft Serveurs de symboles pour télécharger des symboles de l'publics de Microsoft serveur de symboles ou de Symbole Chemin d'accès de charge à partir d'un répertoire où vous avez sauvegardé auparavant symboles.
J'ai essayer ceci:
et puis tous les symboles sont chargés:
J'ai été assis sur un point d'arrêt, qui est sur le point de l'appeler .NET framework code:
protected override void ScaleControl(SizeF factor, BoundsSpecified specified)
{
base.ScaleControl(factor, specified);
Poussant F11 le débogueur de simplement passer à la ligne suivante:
protected override void ScaleControl(SizeF factor, BoundsSpecified specified)
{
base.ScaleControl(factor, specified);
//Record the running scale factor used
this.scaleFactor = new SizeF(
this.scaleFactor.Width * factor.Width,
this.scaleFactor.Height * factor.Height);
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Je suis assis à un point d'arrêt dans mon code. J'ai essayez de double-cliquer sur une fonction de plus haut dans la pile d'appel. Cela devrait, je l'espère, me permettre de sauter à l' .NET code:
Sauf que ça ne fonctionne pas: Visual Studio me dit qu'il n'y a aucune source disponible:
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Si je passe le démontage de la vue avant d'essayer d'entrer dans .NET code (Debug -> Windows -> Démontage), je peux voir un call
dans le .NET code:
Et quand je le fais, j'arrive à la fin du débogage d'un démontage de System.Windows.Forms.ScaleControl
:
Qui n'est pas le même, ou aussi utile que, être en mesure de prendre dans le .NET Framework source.
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
La configuration de symbole chemin de cache sur mon ordinateur ne contiennent symbole des fichiers de cache:
De sorte qu'il est en cours de téléchargement pdb
les fichiers de symboles, mais refusant de les utiliser.
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Leppie m'a suggéré de vérifier la Debug
journal (le journal de débogage fenêtre ouverte; sinon, il ne vous connectez pas grand chose):
Step into: Stepping over method without symbols 'System.Windows.Forms.Form.ScaleControl'
Plus tôt dans le journal, je vois le chargement des symboles pour System.Windows.Forms.dll
:
Loaded 'C:\Windows\assembly\GAC_MSIL\System.Windows.Forms.0.0.0__b77a5c561934e089\System.Windows.Forms.dll', Symbols loaded.
De sorte qu'il est trouver mon symboles, mais en prétendant qu'elle ne pouvait pas les trouver.
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Un gars de Microsoft Italie suggère de désactiver les fichiers source pour correspondre exactement à la version originale:
Qui n'ont pas le fixer.
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Il a été suggéré qu'il y a un bug avec Microsoft serveur source pour .NET Framework 4.0. Suite à cette suggestion, je suis passé le projet cible .NET Framework 3.5:
Qui n'ont pas le fixer.
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Quelqu'un, quelque part, les bras croisés se demandait si une autre personne rencontre le même problème a l'aide de la version 64 bits du débogueur. Maintenant, il n'y a pas une telle chose comme une version 64 bits de Visual Studio, mais j'ai essayé le changement de mon projet de AnyCPU à x86 (il était JITed pour x64), dans le cas de Microsoft ne prend pas en charge les processeurs 64 bits:
Qui n'ont pas le fixer:
Step into: Stepping over method without symbols 'System.Windows.Forms.Form.ScaleControl'
Comment puis-je activer .NET Framework source de marcher dans Visual Studio 2010?
Voir aussi
- Configuration de Visual Studio pour Déboguer .NET Framework Code Source
- Incapable de débogage .NET framework code dans VS2010
- .NET framework source de gué pas de travail malgré les options de jeu
- La configuration de Visual Studio 2010 de Microsoft .NET Code Source
- Visual Studio 2008 SP1 .NET Framework Source de Débogage
- Pas de Debug>fenêtre Modules en Visual Studio 2008 Version 9.0.21022.8 RTM
- Avez-vous vérifié le code source "cache"?
- Qu'entendez-vous par le "code source" cache "pour"? Si tu veux dire que le dossier qui met en cache le code source, il est rempli (Voir mise à Jour 4)
- Oui. Est-il possible d'ouvrir ce fichier source, et de définir un point d'arrêt?
- Juste une pensée. Vous VS2010SP1? Si oui, il se pourrait que .NET 4 SP1 du code source n'est pas "disponible" encore.
- C'est pourquoi j'ai changé mon projet à la cible .NET Framework 3.5 (la mise à Jour 7). Mais, non, SP1 n'a pas été appliquée à mon VS2010.
- Intéressant. Je viens de tester une application console, et d'obtenir les mêmes problèmes que vous. La vérification de la SymbolCache dir, je vois qu'il ya APB, mais pas de code source. Je vous jure j'ai eu le code source il y a quelques semaines...
- Je sais que cette question a été assis ici depuis plus d'un an, mais il peut y avoir un peu de mouvement. Aujourd'hui j'ai remarqué que les liens de téléchargement sont partis de la Shared Source Initiative. referencesource.microsoft.com/netframework.aspx vous ne savez Pas si c'est positif ou négatif.
- Même problème dans Visual Studio 2012!
- J'ai pu configurer le débogage dans VS2010 sur Win7x86, mais après l'installation des dernières mises à jour de cette fonction a cessé de travailler (n'ont pas de VS2010 SP1 appliquée, simplement Win7 mises à jour, y compris SP1)
- excellente écrire de la question!
- Il ne fonctionne pas dans VS2012 soit. Il a travaillé pour un jour, après avoir tout configuré et juste cessé de travailler. Deux jours, des dizaines de cafés, des centaines de pages web plus tard, il ne fonctionne tout simplement pas. Dans le même temps, les sources publiées par symbolsource.org juste faire le travail comme un charme.
Vous devez vous connecter pour publier un commentaire.
La Pdb pour entrer dans le code source sont publiées uniquement pour la version d'origine et les Service Packs. Ainsi, lors de la mise à jour de sécurité qui vient de sortir et il modifie la dll que vous essayez de déboguer, il va provoquer la source en faisant un pas à pas le travail (qui est, vous obtiendrez le "Pas de source" avec un grisé "Parcourir pour trouver la Source").
Cependant, une fois que vous avez fait tous les paramètres appropriés, vous pouvez utiliser la solution de contournement suivante. La solution de contournement consiste essentiellement à trouver les mises à jour de sécurité qui a causé la dll à modifier, puis de les supprimer. Ceci a l'inconvénient évident d'avoir ces mises à jour de sécurité supprimées sur votre machine.
Solution de contournement
Par exemple, j'ai fait la suite de recherche de google:
site:support.microsoft.com/kb System.Windows.Forms.dll 4.0.30319.269
http://support.microsoft.com/kb/2604121
, donc KB2604121, est ce qui nous intéresse.Vous aurez besoin de faire cela pour chaque dll dans le .NET framework que vous vous souciez de débogage dans.
Une fois cela fait, définissez un point d'arrêt dans le .net de source (par exemple, aller à des points d'arrêt onglet, dire le Nouveau->Break à la Fonction, et les entrer dans le Système.De Windows.Les formulaires.Forme.Le formulaire) ou une étape dans un de la .net méthodes de cette dll.
built by: ...RTMGDR
. Maintenant, la version ressemble à ceci:4.0.30319.17929 built by: FX45RTMREL
. Mais encore, je ne peux pas déboguer le code source 🙁built by: FX45RTMREL
(BTW, c'est pas juste RTMREL, il y a un certain préfixe là). Je reçois toujours "pas de source" message quand j'essaye d'étape ou frapper un point d'arrêt dans le System.Web.dll. J'ai ensuite désinstallé tous .NET Framework mises à jour. N'a pas aidé.Alors que malheureusement il y a un problème avec un de Microsoft, comme Leppie souligné (et j'ai obtenu le même résultat voir
il convient de noter que votre tentative échouerait de toute façon, depuis que vous l'avez mentionné:
au lieu de:
referencesource.microsoft.com/symbols
Voir la FAQ/section Dépannage de Configuration de Visual Studio pour Déboguer .NET Framework Code Source
J'ai trouvé la réponse, je pense.
J'ai tracé ce qui se passait sur le Violoneux. Il semble que seuls les symboles sont actuellement disponibles, et aucune source.
Quand VS essaie de charger les symboles de la "referencesource serveur' il échoue (404). Comme cela échoue, je pense qu'il est impossible de mapper à la source des fichiers sur le serveur.
http://referencesource.microsoft.com/symbols/mscorlib.pdb/ED96A7F38A2940F39B9CA7AD9BC5CB671/mscorlib.pdb
Après l'échec, il tente un serveur appelé "msdl" où il trouve la réelle APB (mais il semble que celui-ci ont aucun code source de l'info).
http://msdl.microsoft.com/download/symbols/mscorlib.pdb/ED96A7F38A2940F39B9CA7AD9BC5CB671/mscorlib.pd_
Dans l'ensemble, il semble être un (temporaire) problème de Microsoft avec leurs serveurs.
Je suis sûr que j'avais un peu de code source d'un certain temps. Mais maintenant elle ne fonctionne pas.
Edit:
Je l'ai essayé avec divers .NET des versions, tous le même résultat. 🙁
Pour l'instant, il ne fonctionne pas si vous avez SP1 est installé. Voici quelques commentaires à propos de formulaire de problème MS: http://social.msdn.microsoft.com/Forums/en-US/refsourceserver/thread/41388c7b-582b-4e3f-8178-3d38a3c99639
Vous pouvez trouver la source de référence ici, disponible en téléchargement:
.NET Framework 4.0 source de Référence
Les sources de la WCF, WF, et même l'4.5 Beta /RC et beaucoup plus
on y trouve aussi:
Microsoft Referencesource NetFramework
Voici les instructions officielles https://referencesource.microsoft.com/setup.html
Dans mon cas, j'ai été débogage d'une vieille .NET 2.0 WinForms application et j'ai eu le "Source n'est Pas Disponible" message. J'ai essayé tous les réglages recommandés.
En fin de compte, j'ai reconstruit l'app temporairement cible .NET 4.5 et a été en mesure d'obtenir la source de l'intensification du travail. Peut-être que mon application est tout simplement trop vieux pour source des pas. Genre de défaites le but, je le sais, mais pour une installation rapide et sale de test il fonctionne. Le bug que j'ai est toujours présent dans .NET 4.5. 🙂
si vous souhaitez déboguer le code open source (comme le package nuget), vous pouvez ajouter cette url dans votre serveur de symboles liste
http://srv.symbolsource.org/pdb/Public