Monday, January 19, 2009

How to remote debug with Visual Studio without debugging tools installed on remote machine

If you need to debug a remote machine and do not have any type of debugging tools installed you can launch the Visual Studio Remote Debugger console via a UNC path back to your Visual Studio Instance.


Steps


1) Ensure you have the latest code base in VS and the latest debug build (must have .PDB files).

2) Launch Visual Studio

3) On the remote machine - launch the Remote Debugging Utility via UNC path back to your machine

Example \\myMachine \Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x64\msvsmon.exe



Note: This file will differ based on installation type and OS (32 / 64 bit).

4) Launch the application to debug

5) In Visual Studio Under Tools select Attach to Process


6) In the following screen put in the machine name of Remote System you are connecting to and hit refresh




7) Now select the application and click attach.



You should now be able to debug without installing any tools on the remote system.

Thursday, January 1, 2009

A new direction for the New Year

Over the past month or so I have been doing a lot of work on the Oracle Tool from my previous post. I totally redesigned the tool and turned it into a major player which I will have finished some time this month. I have decided that I want to learn at least one new programming language each year. Since 2008 was a year for Java to start with and then slam home C# with ADO.net I need something new and different for 2009. I looked at a few languages including Perl and Javascript. Now is the time to make the decision - and the choice is....


Ruby (Gems, Rails, etc).

Why Ruby? Well it is an old language with a new twist (Rails) and is becoming more popular. Plus it's not Windows proprietary. I am not anti-Microsoft by any means - Bill Gates has put many a dollar in my household over the years. My goal is to become as well rounded a programmer as possible. This to me means variety across multiple language types, platforms, OS's, etc.

So now that I have my language set - what development environment to use? I asked a couple of people who have programmed in Ruby and their preferences were Linux and Mac. Well I don't own a MAC and haven't used Linux in over a year. So linux it is :o). I chose Ubuntu 8.1.0 Desktop for this. I like Ubuntu and it has great reviews from others.

To start with I setup a virtual machine with Ubuntu on my desktop here at home. This beast is a quad core, 8 gigs of ram - more than a TB worth of space (raided) so I am good on resources. I am primarily Windows based so I don't have the heart yet to convert my main machine to Linux just yet. Well the setup went well and I was suprised at how many of the command line commands I had remembered, and forgotten :o). After setting up / updating / and configuring the OS I installed my development tools. I choose to install NetBeans 6.5 as well as Eclipse. Both are good IDE's and Netbeans has great interaction with Ruby. I also added MySQL which I haven't used in a few years. I will be using SubVersion for my source control and even found a nice little script on the net (haven't tested yet so I am not posting yet) that will backup you repositories, zip them, and copy them out to another drive.

Note: I haven't chosen a plain text editor as of yet - not sure which I am going to use but will determine in the next few weeks.

So now that my VM is setup to develop I am going to spend the next few months getting into Ruby / Linux / MySQL and some web development. This will keep my interest for a while at home as I continue to improve my C# skills at work.

I'm so excited - I can't wait to build my first app. Oh wait - I have to go away for a family vacation this weekend so it's going to be a few extra days :o|.