C# 4.0 WinDbg Pro Required (Heap Corruption) - ''Explain How? or Q/A'' Project Type

Cancelled Posted Sep 18, 2011 Paid on delivery
Cancelled Paid on delivery

Dear coders,

Brief:

We work in WinDbg session after the application crashes and you teach me how to find the crash problem, i.e. what commands to issue to WinDbg, what tools to use, how to use, etc...

Detailed description follows in its own section.

## Deliverables

I am a C# coder and recently I started having a problem with one of my desktop programs. The problem seems to be a heap corruption, while I cannot find any code in the program which uses an unsafe code. Thus this problem requires a proper debugging.

Currently I am using WinDbg and PageHeap to find a cause of the problem, but have no luck since I am new to WinDbg and such sort of errors at all.

What I need is a WinDbg (maybe AdPlus or DebugDiag) professional who can lead me through the process of finding the problem cause. I expect the project to be a set of advices and question answers from the coder, which point me in the right direction. The target of the project is to find the cause of the problem with the help of the coder.

Not sure how else this can be done, probably there is a better way to achieve this. If you have a proposal on how to solve this better (with other conditions for the project), I will be glad to hear.

If you would like to get more details on the project, you can see my question here:

[[url removed, login to view]][1]

Following the link above you will see the first answer to the question which provides a set of actions required to find the problem, this is the sample how I imagine the project will flow.

The main problem here is that I do not use COM and do not use native/unmanaged code at all. My parser is SgmlReader which is an open source software, I checked its code and it is entirely managed. The task here is not to review my code or debug/profile it. The task is working in WinDbg once the application crash and we have it attached to WinDbg - actually point me, advise me, forward my actions, finally teach me WinDbg.

So the coder does not look at the code, but points me how to get to the problem in WinDbg.

A quick example (same as StackOverflow works) on how the project should flow:

Me: I have the application crashed with WinDbg attached.

Coder: Type "!analyze -v" and send me the output.

Me: Done, sent.

Coder: You have a heap corruption, because you have GC on the top of the stack, you need to enable PageHeap in order to get to the problem source. Do the following... [description on how to start/tune/etc. PageHeap].

Me: Ok, done, waiting for the new crash.

Me: New crash, here is the analysis of WinDbg.

Coder: Ok, again we didn't catch the source, it points to StringBuilder, we need to try MDAs.

etc...

i.e. the coder show me how to use WinDbg to catch the problem, see the StackOverflow sample I provided, there Seva Titov provided me an excellent start with points on what to do, while he didn't show exactly how and I had to Google those.

I wasn't familiar with WinDbg and other tools at all before I met this problem, so I had to learn their basics quickly, while I still don't know them deep

C# Programming Customer Support Microsoft Project Management Software Architecture Testing / QA Training Usability Testing Website Testing Windows Desktop

Project ID: #3580513

About the project

Remote project Active Oct 24, 2011