Archive for the ‘C#’ Category

Adding your own Custom Control to a Windows forms Context Menu

March 6, 2009

Ever wanted to show your own custom control, inside the windows forms context menu? has a nice article with how-to video.


Singleton Pattern vs. Static Class

November 13, 2008

The singleton pattern ensures a class has only one instance, and provide a global point of access to it.

There is a nice article about choosing between Singleton pattern and the static class here with examples.

DebuggerStepThrough attribute

November 6, 2008

Pedram Rezaei has written how we can let .NET debugger know, not to step in to certain elements of your program with the help of DebuggerStepThroughAttribute.

Read it here

TypeCode enum in C#

June 9, 2008

Recently, one of my friend digged in to metadata of TypeCode enum type and found out that, it does not have value 17 in it.

imageEven I was surprised to see this, and wanted to know the reason behind value 17 missing from the enumeration.

I googled and found a link to blog which explains, why the value 17 has been missed from the enum.

From the author:

We’ve had this “hole” in the TypeCode enum since October of 2000, and I can’t find an older set of bits. But, I’m sure that comment in IConvertible is right – this used to be TimeSpan. For TimeSpan, it’s possible we thought it would be interesting for a while, then we realized that frankly not that many people need to convert a Decimal to a TimeSpan, then removed it.

You might ask why we didn’t “fix” the enum when we removed whichever of these values we had originally added. It turns out that whenever we have a breaking change internally, we need to recompile all the code that might possibly depend on the removed or changed public surface area. For us, that would mean rebuilding everything that might have referred to TypeCode.String, whose value would have changed from 18 to 17. While we do go through that process internally in DevDiv, it is costly & painful for us.

Encountered one more error!

March 17, 2008

I recently encountered one more error and was able to resolve soon with the help of one of my colleague.

For those who reading this blog, I have no intention to keep posting errors I encountered, but after all this is a blog which is only intended to have issues encountered in my work life 🙂

However I still feel, my posts may help someone who encounters the same error. Hence with this dual things in my mind I continue to post these errors.

Ok now, I was trying to execute a mobile web application, with IIS6 and .net framework 1.1, and I got the following error.


As you can see from the screenshot, application was trying to write to Event Log. From the exception you can grasp that it is a permission issue while reading a registry key.

Following are the steps to resolve this Event Log Permission error:

1. Open registry editor.

2. Drill-down to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog.

3. Right-click on Eventlog and click permissions.

4. Add Local machine\users to the list and give full control permissions and click OK.

5. Then drill-down to next level in Eventlog\Security.

6. Right-click on Security and click permissions.

7. Add Local machine\users to the list and give full control permissions and click OK.

That’s it! This error is gone!

PS: Having said that if these steps does not resolve the issue, you can also try changing the authentication from network to System Account in IIS.