Friday, September 26, 2008

Remote Debugging in Visual Studio 2003

So, I had to debug an app of mine that I had deployed on a Windows 2003 Server box that did not have Visual Studio installed. I went through a few articles, bugged a colleague of mine only to find out that we had a doc explaining something similar on our company wiki.

Anyways, it turned out, setting up the debugger in VS2003 isn't exactly as simple and straightforward as VS2008. But after going through a few articles online and the MSDN tutorial, all I had to do was copy over msvcmon.exe from C:\Program Files\Microsoft Visual Studio.NET 2003\Common7\IDE\Remote Debugger (this may not be the exact location) to the remote machine (I put it on the dekstop for ease of use).

After that I opened a command prompt and ran it using the following switch :
C:\Documents and Settings\jjohnson\Desktop\>mvcmon.exe -tcpip -anyuser

Ideally what this means is that you are going to use TCP/IP mode for debugging and you allow any user to attach to this process.

Other available modes are Pipe Mode and the default mode. (You can get more help by msvcmon /?).

Anyways, if you need a better explanation look here.

Tuesday, September 16, 2008

11 More Visual Studio Shortcuts You Should Know

11 More Visual Studio Shortcuts You Should Know

Posted using ShareThis


  1. CTRL + “K” + “M”: This one is Genius.
    Incase you need to add a method to an
    already existing class you just write the method
    as if it exists :

       1: int i = 5;
       2: bool flag = NewMethod(i);

    Click on the shortcut and you will get the
    following method stub:

       1: private bool NewMethod(int i)
       2: {
       3:     throw new NotImplementedException();
       4: }

    Great isn’t it?

  2. CTRL + “.”: This one expands the one before it, say you need to add a functionality to a different class. again all you have to do is use the method as if it exists:
       1: int i = 5;
       2: bool flag = DifferentClass.NewMethod(i);

    Put the cursor on the new method, click the shortcut and you will see this:

    Create Method Stub
    Hit Enter and you will get a new method stub with the return value and the parameter, in the other class.

       1: public class c
       2: {
       3:     internal bool NewMethod(int i)
       4:     {
       5:         throw new NotImplementedException();
       6:     }
       7: }

    Definitely my favorite.

  3. CTRL + “-” and CTRL + SHIFT + “-”: These two are similar to the Forward and Backwards buttons of the WebBrowsers and will take you to all the places your curser was, Very useful for those times you click F12 to go to definitions and then have no clue where you were before :). (Thanks Vijay Santhanam).

  4. ALT + ENTER: We talked about it in the last post, but it seems that this shortcut will open the properties window on anything that moves, even Files in your Windows Explorer. (Thanks to Bryan Migliorisi from http://www.Migliorisi.com).

  5. SHIFT + ALT + ENTER: This one will switch you Visual Studio to Full Screen mode, which is very useful in those boring presentation when you have to show your code through a projector on a screen. Another click will get you back to normal mode. (Thanks to Pablo Marambio).Visual Studio Full Screen

  6. CTRL + “M” + “M”: This one will collapse the region your cursor is at whether its a method, namespace or whatever for collapsing code blocks, regions and methods. The first will collapse only the block/method or region your cursor is at while the second will collapse the entire region you are at. (Thanks to knave).

  7. CTRL + ALT + “P”: This will open up the attach to process window, very useful for debugging. (Thanks Greg Beech from http://gregbeech.com).Attach to Process

  8. CTRL + “R” + “R”: This one is used to quickly rename a method/ variable or whatever. (Thanks again to Greg Beech).Rename Method

  9. F8 and SHIFT + F8: These two are great! they are similar to the shortcut number 3 but they will take you forward and backwards in your search results just search for something and then start hitting F8 and you will see. (Thanks to David Hu).

  10. CTRL + SHIFT + “B”: This one will invoke build solution. ( Thanks to Matt Brunell).

  11. CTRL + “B” + “T”: This one will allow you to quickly add or remove a bookmark from a line of code.

Truly some great and helpful shortcuts. Thanks to everyone who commented, and looking forward to hearing what else you have.

If you want some more cool options for your visual studio check out Power Commands. And once again if you think we missed anything, comment.

Until next time, Happy Coding !!!

Wednesday, September 10, 2008

CheckValidGuid(string strGuid)

Code snippet to check if the entered string is a valid Guid or not.


public static bool IsValidGuid(string value)
{
if (value == null)
throw new ArgumentNullException("value", "Invalid null value supplied");
return Regex.IsMatch(value, @"^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$", RegexOptions.CultureInvariant);
}

Happy Coding !!!