Geeks With Blogs
.NET Corner Jeans, .NET and Physics (eka The Quantum Boy) November 2008 Entries
COM, RPC and Heap Corruption - Windbg Part 2
Mr. Bugsy Elusive We have a C# client and a Local COM server hosting a VoIP stack. We use COM interop. for API and events to the COM server. Today after some changes, when we started to load testing the system a nasty crash happened. From initial observation it's look like some kind of Heap Corruption(may be leaked from stack boundary and stuff like that). I used DTW / Gflags to run the server(sipserver.exe) under windbg and symbols are properly set. Stack traces refer to RPC calls as usual but how ......

Posted On Sunday, November 9, 2008 9:44 AM

The Performance Bug
Its very tough to get into every possible part of modern software development process :- Debugging, Testing, Building, performance Optimization etc. Pardon me for skipping some sub-processes. But I was never hyper-aware about performance issues and It was always an afterthought of development process. But in the last couple of weeks I was continuously cracking my head in subtle issues related to performance optimization. For example when I am profiling a piece of test-case code for a database driver ......

Posted On Saturday, November 8, 2008 6:36 AM

Career @ Microsoft
Microsoft.DevelopmentPost msdev = new Microsoft.DevelopmentPost(); msdev.Candidate = this; msdev.DieForProductDevelopment = true; msdev.HasLatestDotNetKnowledge = true; msdev.FollowMsExperts = new MsExperts[] { “Andrew Hejlsberg”, “Brad Abrams”, “Chris Anderson”, "Matt Pietrek" }; msdev.CrazyAboutList.Add(Cr... msdev.CrazyAboutList.Add(Cr... msdev.CrazyAboutList.Add(Cr... msdev.CrazyAboutList.Add(Cr... msdev.CrazyAboutList.Add(Cr... ......

Posted On Saturday, November 8, 2008 6:27 AM

The BSOD Factor
In a nice sunday afternoon I opened a MC++ sorry oldy MFC project in VS.NET.So far so good. Now i was going to insert a merely innocent breakpoint before firing the program. Mouse cursor changes to hourglass changes to infamous BSOD(Blue Screen Of Death for Windows). I ignored the memory dump and rebooted but Windows XP was unable to start. It seems some boot information table or partition table might have been corrupted in the process. Sad but inevitable in a developer's life.But I hade some serious ......

Posted On Saturday, November 8, 2008 4:08 AM

WinDbg , Crash Dump .. Associated Headches - Part 1
For a long tome I kept myself away from this wonderful but ugly looking tool as I was the die-hard fan of a Compuware(Numega then) masterpiece - SoftIce. Hey I still have it installed inside of a Win98 Virtual Box in my XP host. Though SoftIce has got its new incarnation - DriverStudio, not the WinDbg. If you haven't downloaded it, get it Debugging tools for Windows. But I'm not going to give basics of WinDbg usage here. Nop. But quality articles are galore. One thing I must mention that if your ......

Posted On Saturday, November 8, 2008 3:56 AM

AI RoboForm, BHO and C#
Remember the awesome AI RoboForm. Its the smartest of all web form fillers exist on earth. In case you haven't used it you can found it here. From password memorization (I'm extremely shaky about trusting any third party software expecially those deals with password, CCs etc.), to secure transfer of user data profile to removable devices by Pass2Go RoboForm has it all. Although its seems easy until I myself went on creating some proof of concept equivalent to this. To achieve anything closer to this ......

Posted On Saturday, November 8, 2008 3:49 AM

Binary Tree, C# and Delegates - Part 2
Well the "brain-brush" series continues. One of my favourite binary tree question would be given a preorder and inorder traversal strings write a function to build the tree. Most of the rubbish text books provide non-programmatic solution to this and rest append it as a to-do. Today I will proceed step-by-step to solve this and that too with same ingredients - delegate, generics and C#2.0. Disclaimer still holds: "This is just a fundamental recapitulation of binary tree and data structure as a whole. ......

Posted On Saturday, November 8, 2008 3:37 AM

Binary Tree, C# and Delegates - Part 1
During the last week I was brushing up my Data Structure fundamentals. It was great to get back the days of C style pointers, link list, binary trees etc. But at the same time I want to play around the anonymous delegates of C# 2.0. Both my wishes were granted...My data structures were based on C# generics. The TreeNode structure and the action delegate were both templatized(i.e. based on Generics public delegate void Action<T>(TreeNode<... p); public class TreeNode<T> { //Data public ......

Posted On Saturday, November 8, 2008 3:34 AM

IntPtr, 64 bit Porting and Fun
Guys I was busy in some HLD for past two weeks or so. I'm back now into my favourite blogspace - GWB. Yesterday when our 64 bit porting team is working for the immediate 64 bit release of our product, they came to me for suggestion on a topic which I think worth discussing. While they are happily ported unmanaged C++ code, they were facing some difficulties with porting managed code(which should be easier! right?). In unmanaged C++ world they handled pointer disparity between the platforms with smart ......

Posted On Saturday, November 8, 2008 3:05 AM

Tone Detection, FFT and more...
[ This post has moved to - http://tempuri.org/tempuri.... ]As part of our business, we have to deal with VoIP based media processing often. Made a call to a 1800-xxx number or any number, if it "seems" like an "Answering Machine" then we need to detect it. Normally this kind of DSP stuff is done by hardware integrated DSP chips. A similar system is shown below (Dialogic® MSP 1010), But we don't have that luxury. We have a primitive Answering Machine Detection (AMD) system which is primarily based ......

Posted On Friday, November 7, 2008 8:49 PM

Recreate gacutil - Part 2
Get the short introductory part 1 here. After the initial inspection was finished, I was pretty much surprised by looking at the existing assembly unGACing code. The code expects full path of the concerned assembly, create a temporary appdomain, inject following class(Util) into the appdomain and get the full qualified name(strong name) for the assembly, then uninstall with the help of IRegister interface. internal class Util : MarshalByRefObject { internal string FullAssemblyName(string name) { ......

Posted On Friday, November 7, 2008 10:04 AM

Recreate gacutil
It is nice to be back at Matrix. The story begins like this - Couple of days back we were facing some issues regarding GACing and UnGACing our primary assembly. They(install team) were using some in-house tool called ourProductReg.exe for unGACing the primary assembly , let's call it ourProductAssembly.dll. The commandline tool accepts full qualified filepath of the assembly to be uninstalled(installtion - GACing , seemed doesn't have any issue). Strange. Like below ourProductReg.exe /u c:\....\ourProductAssembly.dll ......

Posted On Friday, November 7, 2008 10:02 AM

.NET Code Protectors, Obfuscators And more
Honestly, I'm a frequent user of infamous .NET decompiler - Reflector (http://www.aisto.com/roede... Hacking vanilla .NET assemblies are insanely easy with this tool. Now that I'm writing my own .NET based product (which will be launched soon and I'm pretty much sure that it will be immensely popular in Indian music lovers. I will write a fresh post while launching the tool) my attention is turned into the protection of my own assemblies. After researching a bit I came to conclusion that ......

Posted On Friday, November 7, 2008 9:56 AM

Copyright © dbose | Powered by: GeeksWithBlogs.net