Sign in
Mike Stall's .NET Debugging Blog
Notes on Managed Debugging, ICorDebug, and random .NET stuff
Blog - Link List
Other Blogs
Tim's .NET blog
Energy Policy
CLR blogs
Rick Byers (CLR)
List of all CLR blogs
David Broman (Profiling)
Thomas Lai's blog
Other links
All about MDbg
What's new in v2.0?
Who am I?
ICorDebug/MDbg Forums
Contact me?
ASP.Net
ScottGu's blog
Henrik's blog
Brad Wilon's blog
Carlos Figueira's blog
Translate This Page
Translate this page
Powered by
Microsoft® Translator
Options
RSS for posts
Atom
RSS for comments
OK
Search
Tags
Compilers & Languages
Design
dlr
Edit-And-Continue (EnC)
Family
feedback
FuncEval
ICorDebug
Interop (mixed-mode)
linkfest
MDbg
Non-work
Pages
Quiz
Random
random .net
reading
Sample Code
Silverlight
This should be in MSDN
Troubleshooting
versioning
WebAPI
Whidbey (V2.0)
Windows Live
Archive
Archives
August 2012
(2)
May 2012
(3)
April 2012
(5)
March 2012
(2)
November 2011
(1)
September 2011
(1)
December 2010
(1)
September 2009
(2)
July 2009
(1)
May 2009
(1)
February 2009
(1)
November 2008
(1)
June 2008
(1)
May 2008
(2)
April 2008
(3)
March 2008
(5)
February 2008
(2)
January 2008
(10)
December 2007
(7)
November 2007
(5)
October 2007
(16)
September 2007
(8)
August 2007
(12)
July 2007
(9)
June 2007
(5)
May 2007
(7)
April 2007
(4)
March 2007
(6)
February 2007
(5)
January 2007
(11)
December 2006
(9)
November 2006
(13)
October 2006
(9)
September 2006
(10)
August 2006
(6)
July 2006
(13)
June 2006
(10)
May 2006
(3)
April 2006
(4)
March 2006
(31)
February 2006
(16)
January 2006
(18)
December 2005
(11)
November 2005
(23)
October 2005
(12)
September 2005
(22)
August 2005
(31)
July 2005
(10)
June 2005
(7)
May 2005
(4)
April 2005
(5)
March 2005
(9)
February 2005
(16)
January 2005
(6)
December 2004
(3)
November 2004
(4)
October 2004
(14)
September 2004
(2)
January, 2006
MSDN Blogs
>
Mike Stall's .NET Debugging Blog
>
January, 2006
Posts
Subscribe via RSS
Sort by:
Most Recent
|
Most Views
|
Most Comments
Excerpt View
|
Full Post View
Mike Stall's .NET Debugging Blog
Fun with yield, generics, and foreach
Posted
over 7 years ago
by
Mike Stall - MSFT
15
Comments
We all know that you can use C#'s foreach keyword to iterate through all items in an enumeration. Suppose you have a list of mixed-types: object [] list = new object [] {1,2, "abc" , 5f, "def" }; Trying to enumerate through the strings like this...
Mike Stall's .NET Debugging Blog
MDbg UI Threading, round 2
Posted
over 7 years ago
by
Mike Stall - MSFT
2
Comments
The STA/MTA threading problem is (hopefully) fixed in the latest MDbg winforms Gui . (which also has some cool new features, including an IL disassembly window ) The original solution implemented in the original GUI (described here ) had the problem...
Mike Stall's .NET Debugging Blog
You can't do Edit-and-Continue with Interop-debugging on.
Posted
over 7 years ago
by
Mike Stall - MSFT
6
Comments
Somebody asked on the forums about Edit-and-Continue (EnC) in mixed mode . You can't use managed EnC with mixed-mode ( interop ) debugging enabled. This is a limitation of the CLR Debugging Services. Both Interop-debugging and EnC are complicated features;...
Mike Stall's .NET Debugging Blog
When More is less
Posted
over 7 years ago
by
Mike Stall - MSFT
1
Comments
Sometimes more is less. You may do more work to add a feature that turns out to get in the customers way. Here are some examples we've hit in the debugger-space: Example 1: Funceval : When you do a func-eval (via ICorDebugEval::Call*Function), the...
Mike Stall's .NET Debugging Blog
What to do with a feature that only works 90% of the time?
Posted
over 7 years ago
by
Mike Stall - MSFT
1
Comments
Imagine when you're designing a feature if there was an operation that was very useful 90% of the time; but the other 10% of the time it was provably and innately unsafe (either crashed, deadlocked, or gave back garbage). By "innately unsafe", I mean...
Mike Stall's .NET Debugging Blog
Mdbg IronPython Extension updated for Beta 1
Posted
over 7 years ago
by
Mike Stall - MSFT
1
Comments
You probably heard that Iron Python Beta 1 was released . It has a small (but very worthy) breaking change, and I've updated the MDbg-IronPython extension accordingly. I updated it previously for 0.9.3 . The changes are related to redirecting the python...
Mike Stall's .NET Debugging Blog
Multiple steppers on 1 thread and other trivia
Posted
over 7 years ago
by
Mike Stall - MSFT
1
Comments
ICorDebug has a nicely abstracted "Stepper" object, via ICorDebugStepper (I talked more about that here ). You setup a stepper object (via CreateStepper), resume the process, and then get an aysnchronous "StepComplete" debug event when the stepper is...
Mike Stall's .NET Debugging Blog
Oh, yeah!
Posted
over 7 years ago
by
Mike Stall - MSFT
1
Comments
As a ship-gift for shipping VS2005 , I got my copy of VS2005 "Everything Edition" (Ok, it's not actually called that). I'm very excited about this. I've installed it on my home machine and am looking forward to using it for my various pet projects. It...
Mike Stall's .NET Debugging Blog
Sudoku Solver and Omniscient debugging
Posted
over 7 years ago
by
Mike Stall - MSFT
4
Comments
Let me make an analogy between debugging a program and solving a Sudoku. Sudoku is a number-crossword type of game where you fill in numbers in a 9x9 grid such that each row, column, and 3x3 box contain each of the numbers 1...9. The grid is pre-initialized...
Mike Stall's .NET Debugging Blog
XML Diff Tool
Posted
over 7 years ago
by
Mike Stall - MSFT
3
Comments
Here's a webpage (courtesy of ASP+) that compares two XML files (eg, Xml Diff, Xml Patch). It also includes free downloadable version that you can run offline. As more and more things use XML, these sort of tools become more necessary. For example, I...
Mike Stall's .NET Debugging Blog
Click Once rocks.
Posted
over 7 years ago
by
Mike Stall - MSFT
4
Comments
I've been reading up on ClickOnce and it is a very useful thing for easily deploying simple winforms app over the web (like an applet). This MSDN article followed by this FAQ are great overviews to understand it. It also helps having Shawn Farkas only...
Mike Stall's .NET Debugging Blog
PSA: Pinvokes may be 100x slower under the debugger.
Posted
over 7 years ago
by
Mike Stall - MSFT
12
Comments
I need to make an embarrassing public service announcement (PSA): Pinvokes are 100x slower under the debugger in VS2005 / Whidbey. For example, this is the issue that came up here . It may also manifest as your app "hanging" under the debugger w/ 100...
Mike Stall's .NET Debugging Blog
You need Source Files to do source-level debugging
Posted
over 7 years ago
by
Mike Stall - MSFT
3
Comments
I've had several people ask me "if my managed app and pdb are both in memory, can the managed debugger get the source from the debuggee's memory too?". This is a very reasonable question, but the answer here is "no". It comes up in different scenarios...
Mike Stall's .NET Debugging Blog
Trivial RSS Writer
Posted
over 7 years ago
by
Mike Stall - MSFT
3
Comments
Recently, I've been going through the standard fatherhood ritual of trying to setup of a webpage to share out photos of my kid. This naturally involves creating an RSS feed so that family can subscribe to the new image list. I wanted to be able to...
Mike Stall's .NET Debugging Blog
Writing colorized text to RichTextBox
Posted
over 7 years ago
by
Mike Stall - MSFT
0
Comments
You may have noticed I got carried away making everything a RichTextBox in the latest MDbg GUI . That's because I just like having some color in the world, and RichTextBox makes it very easy to colorize text. Here's a simple function to write a string...
Mike Stall's .NET Debugging Blog
Debugabbility with Roundtripping Assemblies
Posted
over 7 years ago
by
Mike Stall - MSFT
5
Comments
I've gotten several questions about debugabbility IL round-tripping. Round-tripping is where you decompile an app (perhaps via ILDasm), potentially edit the IL, and then recompile it (perhaps via ILAsm). This is the backbone for rewriting an assembly...
Mike Stall's .NET Debugging Blog
Partition of ICorDebug
Posted
over 7 years ago
by
Mike Stall - MSFT
2
Comments
The ICorDebug API (the API for debugging managed apps) is about 70 total interfaces. Here is how I'd group the interfaces together, along with my random comments about how various interfaces fit into the big picture. A quick comment about interface...
Mike Stall's .NET Debugging Blog
Happy New Year!
Posted
over 7 years ago
by
Mike Stall - MSFT
2
Comments
Happy New year! My wife took our Christmas tree down, so I guess that's also my que to take my Christmas blog decorations down. Happy new year everybody.
Page 1 of 1 (18 items)