Category: Microsoft

  • Bill Gates wants to annoy the whole world with Windows

    Yes, it’s true. Bill Gates wants to annoy the whole world with Windows.

  • E-mail shouldn’t be this hard

    Yes, it’s time for another Microsoft rant. If you’re a regular reader of my blog, you’ll know that these rants are usually quite justified (unlike some others I’ve read).

    How long should it take to create an e-mail template? Go ahead, take a guess. Five minutes? Ten minutes? Twenty?

    Try 45 solid minutes!

    Before I sat down, I thought to myself, “Self, how hard can it be to create a template in Outlook 2000? Sure, it’s older software, but it’s Microsoft, right? Made for the average computer user.”

    Whatever. I gave up and had to just copy and paste my layout into a new e-mail. I suppose I’ll have to do this each time I need to use this particular design. Very frustrating. It seems that the deeper into Outlook you dig, the worse the user interface gets and the less things make sense. I found some VERY wacky things in there under the templating and forms menus. Quite frightening.

    This makes me want to switch to a different e-mail client. Any suggestions?

  • Auto-completion of paths in Windows 2000

    I’m still using Windows 2000 on my desktop system at home (yeah, call me a dinosaur, I don’t care). One thing I’ve found annoying when switching between my desktop and my laptop that runs Windows XP is auto-completion of paths and filenames on the command line. In short, Win2K just doesn’t do it by default! A simple registry edit can magically change this, though. Just follow the instructions in this article and start tabbing.

  • Willy Gates and the e-mail factory

    It’s not my intention to bash Microsoft with this post, but what I just experienced is so ridiculous I have to blog about it.

    I recently downloaded Microsoft’s free version of Visual C# 2005 and a few days later, began being harassed by a tiny balloon which would pop up every half-hour or so reminding me that I needed to register within 30 days or I wouldn’t be able to use the software anymore. Okay, fine, I bit the bullet and decided to register.

    The first page I encountered required me to sign up for Microsoft Passport. But wait, I thought Passport was dead? And why force me to sign up just to register my software?

    Continuing on, I received a confirmation e-mail for my Passport registration. I also received an e-mail requesting that I verify my e-mail address by clicking on a link, which I did.

    In the meantime, I had finally gotten to the Visual C# registration page and had entered in my information. Clicking save resulted in another e-mail in my box, asking me to confirm that my e-mail address is correct. But wait, didn’t I do this already? Oh yeah, that was just for Passport. Don’t bother sharing information between applications, guys. Sheesh.

    After receiving confirmation for my Visual C# registration, I had received a total of four… yes four… e-mails after registering a single product.

    Does it really have to be this way?

  • No more Rover when searching

    For months, I’ve been annoyed by that little dog, Rover, that appears when performing a file search in Windows XP. He’s slow, he’s cute, and I just want him to go away. Fortunately, I found out how to send him packing back to the doghouse today. Click on “Change Preferences” in the search sidebar, then click “Without An Animated Character.” Rover will obligingly leave.

    Why Microsoft would choose to set up Rover as the default search character in an operating system they call Windows XP Professional is beyond me.

  • dnrTV features Venkat on .NET Generics

    dnrTV’s March 9th episode featured Venkat Subramaniam giving an interactive demonstration of .NET Generics. The entire video tutorial is about an hour long. I thought it was quite useful. It’s fantastic being able to watch an expert in this area as he writes code and explains what he’s doing while he’s writing it. It’s almost as good as pair programming with a master developer.

    I may have to check out some of the other shows on dnrTV this week. .NET Gotchas and Databinding in .NET 2.0 in particular look like they would be interesting.

  • Restarting Windows services in C#

    It’s dead simple to restart a Windows service in C#. I’m a little shocked at how easy it is actually, given some of the other things I’ve found to be so ugly about the language.

    public void RestartService(string name)
    {
        ServiceController service = new ServiceController(name);
        service.Stop();
        Thread.Sleep(2500);
        service.Start();
        Thread.Sleep(2500);
    }
    

    You guessed it: “name” is the name of the service to restart. It must exactly match the actual service name or bad things will happen. I added the sleeps for good measure. They may or may not be needed depending on how responsive you want the service to be immediately after restarting.

    Now if only C# made it this easy to restart a UNIX process…

  • Free and easy way to convert Word docs to PDFs

    If you’re like me, you’ve run into situation after situation in which you’d like to convert a Word document to a PDF. While Googling for a tool to do this, though, I inevitably end up drowning in page after page of supposedly “free” converters which cost $30+ to unlock. Come on, $30 to do a simple conversion? This is the era of open source. There has to be a better way.

    Actually, there is. One way would be to install OpenOffice. It allows you to save a document directly to a PDF. This makes so much sense, doesn’t it? Which brings to mind another question… when will Microsoft add a similar feature to Word?

    If you don’t want to wait around for them to do that (and don’t have the inclination to install OpenOffice), check out these instructions for converting to a PDF by printing to a file and using a couple of free tools. It was quick and easy for me, and now I have my PDF and my $30.

  • Decoding COM HRESULT error codes

    As I mentioned in a previous post, I’m currently slogging through the melancholic mire of testing .NET/C# code. In the process, I’ve been receiving exceptions which give an HRESULT code in hex (i.e. 8×80020005) and not much else. That got me to wondering what these HRESULTs are and how to decode them. This wondering led me in turn to this page which has an excellent overview of what HRESULTs are and why they matter. I also uncovered a link to a freeware tool called HR Plus which can decode HRESULTs and give you a (usually helpful, sometimes vague) idea of what they mean. Both the page and the tool have been extremely handy to have around. I hope they prove handy for you too.

  • Eclipse, Visual Studio, and Ward Cunningham

    As Rich Main blogged in mid-October, Ward Cunningham recently left Microsoft for a job at the Eclipse Foundation. I found this especially fascinating considering that, after over 4 years of developing with Java, a job change recently required me to begin using C# for automated testing. The pain of doing so has surprised me.

    For some odd reason, I assumed that a product like Visual Studio made by a giant like Microsoft (and with a whopping $350+ price tag) would be at least comparable to, if not superior to, Eclipse (which, of course, is free). I was woefully incorrect. Some of the best features of Eclipse, such as auto-refactoring, are just not available. Other features have been implemented, but in a castrated form. It’s almost as if Visual Studio tries too hard to make things easy to do, and in the process destroys a great deal of the flexibility which made Eclipse so pleasant to use.

    After using Visual Studio for a week or so, I gave up on it and have switched back to Eclipse and an open-source C# plugin which I found. The plugin offers syntax highlighting and not much else, so I’m essentially writing C# in a souped-up version of Notepad, but it’s still better than trying to make my way around VS. Maybe I just haven’t inculcated the Microsoft way of doing things yet, but I’ll take Eclipse and Java back any day. I’m sure Visual Studio is useful in many cases, but for writing automated tests against APIs it just stinks.

    Ward must feel the same way.