Başlık kinda her şeyi söylüyor. Her zamanki SOS komutu ! Bpmd bir isim olmadan çok iyi bir şey yapmaz.WinDbg anonim bir yöntemle nasıl kırılır?
bazı fikirler vardı:
- dökümü her yöntem, daha sonra kullanmak bpmd Eğer gerçek dünyadaki kullanımlarda
- pratik değil tekabül MethodDesc bulunca -md Ne söyleyebilirim gelen . Dökümü anonim tip/yöntemlerle sınırlamak için bir makro yazmış olsam bile, bunları birbirinden ayırmanın açık bir yolu yoktur.
- kullanım Reflektör dinamik meclisleri ve/veya Reflection.Emit ile uğraşırken
- yardımcı olmuyor MSIL Adını dökümü. Bu tür senaryolarda içindeki yerel değişkenler okumak için Visual Studio'nun, yetersizlik
o vurmak için o zaman,
change to Windbg using the noninvasive trick
- bekleyin VS kesme noktası ayarlamak ... Ben ilk etapta WinDbg döndü bütün nedendir VS den ayırma girişiminde (app ile birlikte) asmak için neden olur. Bunun nedeni, yönetilen hata ayıklayıcının standart bir "sabit" hata ayıklayıcısı yerine "soft" debugger via thread injection olmasıdır. Ya da belki sadece Silverlight'a özgü bir VS hatasıdır (neredeyse ilk I've encountered).
- benim yedek planında yol tek adıma anonim yöntem haline dönmesini bilinen başka bir yere kesme noktası ayarlamak bu Q & bir daha iyi bir yol
Not: WinDbg'yi gereksiz kılan bir rastlantısal keşif yaptım. Dinamik derleme oluşturma sırasında DebuggableAttribute (http://msdn.microsoft.com/en-us/library/system.diagnostics.debuggableattribute.aspx) programsal olarak yayarsanız, Visual Studio'daki yerel varlıkları yalnızca iyi görebilirsiniz. . –