Runtime Flow blog (Understanding a control flow in a running .NET application)

May 29, 2010

Demo screencasts

Filed under: Uncategorized — Sergey Vlasov @ 6:15 am

I’ve recorded two screencasts showing Runtime Flow in action.

May 19, 2010

Runtime Flow v1.0.5 released

Filed under: Uncategorized — Sergey Vlasov @ 8:09 am

Runtime Flow v1.0.5 released – added function parameters and return values monitoring, added the Customized Run dialog, added support for the relative output paths in the Visual Studio build options.

Customized monitoring

Filed under: Uncategorized — Sergey Vlasov @ 6:56 am

I’ve added the Customized Run dialog that allows to directly adjust parameters for the running executable and module filter:

The Customized Run dialog

The Customized Run dialog


For example, you can add to the module filter the .NET framework dlls to get deeper understanding of what is going on:
Default monitoring results for a WinForms application

Default monitoring results for a WinForms application


Using the rt_test.exe|System.Windows.Forms.dll filter

Using the rt_test.exe|System.Windows.Forms.dll filter


Using the rt_test.exe|mscorlib.dll filter

Using the rt_test.exe|mscorlib.dll filter


The empty filter allows monitoring for all modules:
Using the empty filter to monitor all modules

Using the empty filter to monitor all modules


The customized run settings are not currently saved when you exit from Visual Studio. I’ve not yet decided what is the best way to store it (globally, per solution, per project, per build configuration) and how these custom settings should interact with the debug settings in a Visual Studio’s solution used by the Run command.

Advertisement

May 17, 2010

Monitoring function parameters and return values

Filed under: Uncategorized — Sergey Vlasov @ 3:28 pm

I’ve added ability to catch and display function parameters and return values in Runtime Flow. Currently only primitive types such as bool, int, char, double and string are supported plus one dimensional arrays containing such types. Objects of other types are displayed as dots:

LocBaml startup

LocBaml startup


Computing an answer in GraphCalc

Computing an answer in GraphCalc


Strings longer than 50 characters are trimmed to not overrun the screen:
Saving a document in Thumbnail Viewer

Saving a document in Thumbnail Viewer


When number of elements in an array is more than 10, the first nine elements are displayed + number of skipped element + the last element:
A long strings array in WPFNotepad

A long strings array in WPFNotepad


When an exception occurs the function return value is displayed as Ex:
Unhandled exception in Thumbnail Viewer

Unhandled exception in Thumbnail Viewer


It’s technically possible to display data in objects of more complex types too and I’ll most probably return to monitoring of function parameters in next versions of Runtime Flow.

May 3, 2010

Runtime Flow v1.0 is released

Filed under: Uncategorized — Sergey Vlasov @ 9:07 am

Runtime Flow integrated with Visual Studio 2008

Runtime Flow integrated with Visual Studio 2008


Runtime Flow in real time monitors function calls in a running .NET application and shows them in a control flow tree. The main purpose of the tool is to help developers better understand interworking in a large .NET codebase specific for a selected use case.

Runtime Flow v1.0 integrates with Visual Studio 2005/2008 and monitors .NET 2.0 – 3.5 desktop applications. Both x86 and x64 platforms are supported.

Support for web projects, Visual Studio 2010 and .NET 4.0 is planned.

Visit Runtime Flow home page, read the Quick Start guide and explore your own applications with the fully functional 60 day trial.

Create a free website or blog at WordPress.com.