Fog Creek Software
Discussion Board




Visual Reflector?

Does anyone know of a tool I can point at a DLL, and get a high-level visual representation of all the objects used, and their relationships? Even something as simple as just a large square for the root object, smaller squares inside for each object instance created, and maybe lines running between objects for method calls. This sort of thing would be really useful in learning my way around complex systems.

.
Thursday, June 03, 2004

ActivePerl ships with a little utility to inspect the methods of OLE objects on your computer.

Matthew Lock
Thursday, June 03, 2004

Is this the kind of thing you are after?  (If not, I'm sure you could tweak it to do what is needed!)
http://codeproject.com/csharp/typegraph.asp

This is the same thing but integrated with the all round goodness that is Reflector!
http://blog.dotnetwiki.org/archive/2004/05/31/287.aspx

Neil Dunlop
Thursday, June 03, 2004

what do you call complex systems?

Cecilia Loureiro
Thursday, June 03, 2004

If your talking about a plain old windows DLL, there's no such tool, because object and type information disappears when you compile.

If you've got a COM dll, then you can usually (but not always) find a type library for it, and use OLEVIEW or the typelib api methods to build such a tool. Unfortunately this only reveals the public structure; the internals are anybody's guess.

If you're talking managed (.NET) code, then start with the .NET Reflector, as somebody else already linked to.

Chris Tavares
Thursday, June 03, 2004

Matthew and Chris: Sorry, I should have been more clear. I was speaking of .Net DLLs specifically. I'd also had a look at Reflector and was wanting something more visual.

Cecilia: A complex system is anything I don't understand.

Neil: You are my new personal hero. Thank you.

.
Thursday, June 03, 2004

*  Recent Topics

*  Fog Creek Home