Copyrights @ Journal 2014 - Designed By Templateism - SEO Plugin by MyBloggerLab

Monday, October 20, 2003

Debugging Windows Services using Microsoft Visual Studio .NET

Everybody working on MS platform understand what pain was it to write the Windows services before .NET platform. Though .NET takes care a lot of things on Windows Services development, we do not have sufficient power of debugging enhanced. I wanted to have some methods to do the same. Here is the jist of what I found, though it looks a kind of scattered but that is it and is much better than I found it.

Method 1 : The this one really speaks about debugging them in-proc using a work around of Dummy Service. "Attaching to the service's process allows you to debug most but not all of the service's code; for example, because the service has already been started, you cannot debug the code in the service's OnStart method this way, or the code in the Main method that is used to load the service. One way to work around this is to create a temporary second service in your service application that exists only to aid in debugging. You can install both services, and then start this "dummy" service to load the service process. Once the temporary service has started the process, you can then use the Debug menu in Visual Studio .NET to attach to the service process."
Sometimes it does not make any sense to have some more code written just to debug some code. This is bit useful and a sure method of testing that the debugging works.

Method 2 : This one allows you to debug the OnStart using the some different line of code and explicitly calling the OnStart Method, which I used to debug.
Writing a small main routine and then working it out, makes sense but in this case the service does not remain a service, when I tried to work this out, I could debug the service but it lost the track of VSS attached with this. Shashi says this might be because of adding the main routine in the program it changed the type of the project and then it lost the track of VSS. Doesn't this mean my project is wasted now. Remember after you remove the main routine back to the original, does not mean the project type is changed back to OS service again.

Method 3:This one is for the reference, I could start the debugger as specified by the article, instead of MSVC, I added the fully qualified DEVENV.exe. This opens a new Solution for debugging offcourse it does not have any code in that to put the break points and to step-in. It even overrides the 30 second limit of service startup. MSDN does not speak how to attach an existing solution/Project to this solution, or opening an existing solution to debug. How can I attach the PDB file or the solution so that I can debug the same? This is a valid request for all of the world of developers (should I say debuggers?).

Saturday, October 11, 2003

Microsoft Systems Architecture
Microsoft Systems Architecture (MSA) is a technology architecture that has been rigorously tested and proven in a partnered lab environment to provide exceptional planning and implementation guidance. It goes well beyond traditional technical white papers by physically building out integrated enterprise scenarios based on the MSA architectural principles and design goals. The end result is a validated architecture that complements the planning, build, test, and operations guidance. As a result, the complete IT life cycle is covered and tested with proven documentation. A trustworthy platform is one that embodies the design goals of availability, security, scalability, manageability, and reliability through adherence to sound architectural principles.
The idea is having great software architectures defined. The initiative is new to me but started long back by Microsoft. The business wise division and changes or deviations can be seen over the documentation. Microsoft does not define all of them on their own but the whole architectures are coming from detailed research and testing done with their partners like
Cisco Systems for networking
HP for servers and SAN storage
Unisys for servers
EMC for SAN storage
Brocade Communications for SAN fabric
CommVault Systems for backup/recovery
Emulex for Fibre Channel host bus adapters

More details can found by downloading the documentation on this. The new release of MSA 2.0 is .Net ready. That can be called as the new features over the previous versions of .Net. Offcourse the architecture will not be best for all, but it will be best available with Microsoft Technologies. It is highly customizable but will never recommend IBM WebSphere MQ over MSMQ. So it is our choice how to customize it.

Wednesday, October 08, 2003



After about 10 years of smoking, finally I am trying to quit. I never thought in that direction or may be never realised the need to quit. Suddenly a few days back, everybody started pointing at my beloved cigarette, and used to start with the quitting lectures. It was a moment when I realized it is better to quit smoking than to listen these guys. Like the Marathi proverb "Bhik Nako Pan Kutra Avar" (I am sure Marathi Guys will get it right).

Last Monday, I smoked my last cigarette, and have neither bought nor smoked one since then. Yes, I admit I felt like smoking at least a million or may be a billion times in the last 2 days, but I am trying to keep myself busy, so that I dont get time to smoke at all. See the counter, that is something I really wanted to have in years. Doesn't matter, at last I am not smoking for the time being. I am happy and will be healthy too!!!

Tuesday, October 07, 2003

Top 500 Super Computer
Mr. Ian Croft, supposed to be my mentor in my current assignment, is more of a friend than a mentor. He likes to see the huge server pictures and gigantic computer hardware. He was watching this site, I liked it. This lists worlds top 500 SuperComputers. It's kinda cool u know. Today only I learned that the processor power can be measured in TFlops.

You can learn more about Intel's TFLOPS Supercomputer here or may be we are more enthusiastic people to learn "What happened in Super computer's super world?" It is really interesting to read the "Overview to Recent Super Computers".