Archives
-
Vista Issue of the Day - Firefox 2.0 CPU Utilization
OK, this isn't really a problem with Vista per-se. But I've noticed that when running Firefox 2.0 on Vista, it's constantly spinning the CPU at 15-25%. Restarting Firefox doesn't seem to help, I have just a few tabs open, and they aren't doing much of anything, And yet the CPU utilization for the process is constantly between 15-25%. I certainly didn't have the problem on XP. Is anyone else seeing this?
-
Vista Update - No UAC for you, one year!
Unfortunately, I've had to disable UAC on my Vista install. I was hoping to run with it enabled, at least for a while, so I could grok the issues of developing with and for it. Sadly, it seems somewhat broken on my machine. As I described previously Most of my Control Panel applets, as well as some other apps (like RegEdit) simply failed to run with UAC enabled, displaying a "path not found" error. A few I could work around using Run As Administrator, but in many spots I didn't even have that option.
-
Vista Issue of the Day - Remote Desktop Kills Local Desktop
After upgrading my machine to Vista yesterday, I went home and connected to it via Remote Desktop (from an XP client). It worked fine. However, when I came in to work this morning, I found both my screens blank and unresponsive - I got a mouse cursor and that's it. I could still connect to the machine through Remote Desktop and all my apps were still running fine, but sitting down at the machine, I got nothing. The only thing I could do was remotely restart the machine.
-
Upgrade to Vista complete
At long last I've upgraded my machine to Vista. Yes, I used the "u" word. Although I'm usually a clean-install kind of guy, I just got my machine a couple of months ago, and didn't have the heart to rebuild it all from scratch. So I took a chance and went the upgrade route.
-
Understanding the Rules for Vista Aero Glass Support
I've been pondering upgrading to Vista over the last couple of days, but hadn't pulled the trigger because of uncertainty about support for Aero glass on my machine. In particular, I run dual 20" monitors at 1600x1200 resolution per monitor, and wasn't sure if the 128 MB of video memory on my video card was sufficient to support glass in this configuration. Lots of Googling didn't turn up any answers, so I turned to the always reliable win_tech_off_topic group.
-
MS Ajax beta 1 goodies
Lest I be seen purely as a big fat winer ;), here's some of the really positive things I've noted in the MSAjax beta 1 release:
-
First thoughts on MSAjax (Atlas) Beta 1
I spent a little time this morning looking over documentation for the new MSAjax Beta 1 bits. Although it's great to see the product moving forward toward release, my first reaction is a bit of disappointment.
-
Sometimes, Apple gets it exactly right
Recently, my wife and I replaced our antiquated cell phones with snazzy new Motorola RAZR phones. Not overjoyed by the thought of manually reentering all of our phone numbers, we were hoping to simply copy the numbers from our respective computers to the phones (not ALL of our contacts phone numbers, of course, just the select few that merit being on the cell).
-
MSN Groups for Windows Live Writer support
My last couple of blog posts have been written using the excellent Windows Live Writer tool. It's a fantastic blogging tool. I wanted to send a suggestion or two to the WLW team, so I clicked the Send Feedback menu item. That takes you to an MSN group that's as close to an official support channel as there is.
-
Microsoft Atlas - should I be worried?
For some time, I've been following the Atlas framework (now ASP.NET Ajax) with great interest. The ASP.NET team has proven to be one of the most agile at Microsoft lately, and with Atlas it seemed that they were continuing that trend. Regular CTP drops were being released, the open source-y goodness of the Atlas Control Toolkit was announced, and things seemed to be moving along well.
-
Patching Atlas bugs
One of the downsides to working with early beta software is that it has bugs. Atlas is no exception. So what happens when you encounter one of those bugs? Well, the Atlas team has been good enough to provide us with the source to the Javascript library, so if the bug is there we can in theory patch in a fix ourselves. I found myself in this situation when I encountered a bug in the way client-side Actions handle data binding. Fixing the bug in the source was relatively simple.
-
Digging in to Atlas
I've been spending some time recently playing with Microsoft's Atlas framework. So far I've been pretty impressed with Microsoft's AJAX toolkit. They've come a long way toward building a capable framework that includes both client-side scripting and a client-side/server-side integration model that eases the transition for existing ASP.NET apps into the world of AJAX, while leverage a lot of the existing ASP.NET tooling.
-
Amazon reviews gone wild
Now that Amazon is selling groceries, the reviewers have been having some fun. Check out the reviews for Tuscan Whole Milk. Freakin hilarious.
-
Visual Studio 2005 oopsie
I was working in Visual Studio 2005 the other day, and noticed something in a dialog box that I’ve seen a hundred (maybe a thousand) times before, and never noticed. It was in the “Add New Item” dialog:
-
Absolute positioning in VS2005 HTML designer
In Visual Studio .NET 2003, ASPX pages included a property called pageLayout, which defaulted to “GridLayout” – essentially, CSS absolute positioning for all form elements. Although this is a horrible idea in a production application (I assume MS did it to make it easier to demo rapid application building), it does turn out to have a handy use – it makes it easy to quickly sketch out web forms for UI design or prototyping.
-
Visual SourceSafe - recursive handling bug from command line
In case anyone else bangs their head against this – in SourceSafe, there seems to be a bug in recursive file handling using the command line tools. I tried performing a recursive checkout using a specific filename (AssemblyInfo.cs, in this case), but SourceSafe claimed to not find any matching files. However, if I specify a wildcard character (AssemblyInfo*.cs), it works as expected (although it wouldn’t be exactly the right behavior if I had an AssemblyInfo2.cs file). In other words, this:
-
Record fast software eval - thumbs down to IE7
Wow, that was a record for me. I finally got around to installing Internet Explorer 7 (beta 3) to play around with it. It took me all of 45 seconds to determine that it won’t be unseating Firefox as my primary browser. What did I find in those 45 seconds?
-
Sharepoint 2007 + Firefox = No rich editing
Wow, talk about perfect timing. I was just about to complai…er…blog about this, and one of the Microsoft folks blogs the first definitive statement about it that I’ve found.
-
MSDE not supported on Vista? Yikes!
Whoah. According to this post, MSDE won’t be supported on Windows Vista. This is the first I’ve heard of this, and I have to say it’s pretty surprising. One of my company’s products depends on MSDE – it’s disappointing to think that it won’t be Vista compatible without a pretty major change.
-
Avoiding the dreaded "unable to download folder (null)" error with Outlook 2003/IMAP
I’ve been using Outlook as an IMAP client for a long time (I know, I know, there are better IMAP clients out there, but I work in an Outlook/Exchange shop, so I’m not particularly inclined to use a different tool). One of the things that has driven me crazy for ages is that periodically Outlook would stop being able to access the IMAP server. Doing a “Send/Receive” would display the wonderfully helpful error:
-
SourceSafe 2005 - Getting back the old-style dialogs
Here’s a tip for those poor suckers (like me) who are still stuck using Visual SourceSafe. With SourceSafe 2005 Microsoft tried to clean up some of the ugly UI aspects that carried over from previous versions. In particular, a couple of the old, non-resizeable dialogs were totally replaced with shiny new models.
-
Running Assembly Reflector Add-in FAQ
Q: When I try to run the add-in, I get an error stack that looks like this:
-
New product announcement - Dente 2.0
Product Specifications:
-
Uh-oh - TestDriven.NET goes commercial
Today Jamie Cansdale announced big news - TestDriven.NET is now a commercial product. Although not a huge surprise (signs have been there for a while), this change may very well have some serious repercussions. I know a lot of developers (including me) have TD.NET deeply embedded in their development process. Being suddenly asked to pay for this tool is kind of like - well, kind of like being asked to suddenly pay for NUnit.
I don't begrudge Jamie's right to try to turn what has obviously become a major time investment for him into a money-making venture. I do, however, think this change is going to complicate a lot of people's lives. Anyone who lives in budget-constrained enterprise where ordering software is like pulling teeth (a lot of people, I suspect) is now going to have to justify a new purchase.
My big question about the change is this - what about people already using it? Are they now suddenly software pirates? I know that Jamie still has a free "personal" license, but that only supports "trial users, students and open source developers" - not your average joe professional developer.
I do wish Jamie luck in his new venture. But in the end I wonder if he's already been too successful - he may have gotten so many people hooked on integrated unit testing that an open-source competitor may soon spring up. Anyone from the NUnit team out there? :)
-
Altiris SVS - a new kind of virtualization
Now THIS looks interesting. A company called Altiris has released a product called Altiris SVS (Software Virtualization Solution ). It’s officially version 2.0, though I never heard about version 1.0.
-
Simple but handy VS2005 macro for C# code navigation
Frequently while navigating code in VS2005, I want to go to the definition of the type of a variable. For example, say you're looking at a line of code like this:
...
aVariable = DoSomethingThatReturnsOneOfThese();
...
And you want to jump to the source for the type of aVariable (that is, if aVariable is of type SomeClass, you want to jump the source for SomeClass). As far as I can see, Visual Studio doesn't give you a simple command that does that navigation. So here's a simple macro that does it.
Sub GoToVariableType()
DTE.ExecuteCommand("Edit.GoToDefinition")
DTE.ActiveDocument.Selection.WordLeft()
DTE.ExecuteCommand("Edit.GoToDefinition")
End Sub
Trivial but effective, and it saves me a couple of keystrokes. I map this macro to CTRL-F12 (a shortcut which as far as I can tell is only used by C++ projects).
Note that this only works if you don't declare multiple variables in one declaration statement. For example, it works with declarations like this:
SomeClass aVariable;
but not this:
SomeClass aVariable, anotherVariable; -
Satellite assemblies and strong names
I recently had to investigate how to create satellite resource assemblies for assemblies that are strongly named. Some of the information was surprisingly poorly documented, and required some experimentation to figure out, so I'm posting the results in the hope it might save other people some time.
Here's what I learned:- Satellite assemblies for strong named assemblies must be strong named.
OK, not that surprising. - Satellite assemblies for strong named assemblies must be signed with the same key as the main assembly.
This is actually a bit of a pain for my company, because we use localization partners that in the past have been able to localize the product pretty much independently from us. With our .NET code, we'll have to sign the final satellite assemblies. Fortunately, the localizers can use delay signing with skip verification to do all of their development and testing, and we just need to do the final signing. - By default, satellite assemblies must have the same version number as the main assembly. You can use the SatelliteContractVersionAttribute to enable the main assembly to be versioned while still maintainng compatibility with existing satellite assemblies (thanks to Joe for pointing out this atttribute).
- Satellite assemblies for strong named assemblies must be strong named.
-
Running Assembly Reflector Add-in Update
I've finally gotten around to updating the Running Assembly add-in for Reflector 4.2. Sorry it took so long. I've also included a few bug fixes and improvements.
For details and the download link, go here. -
Running Assembly Reflector Add-in Release History
Having problems? Check the FAQ.
-
Sparkle CTP Posted
Microsoft has at long last posted a CTP for Expression Interactive Designer (aka Sparkle). I've been wondering when we were going to get a look at this one. So far I haven't been all that impressed with Cider, so I'm interested to see what EID looks like (I don't know if EID is an official acronym, but damn, Expression Interactive Designer is a long name). Download here.
-
VB6 returns to MSDN Subscriber Downloads
After the big stink at the end of the year about Visual Studio 6 being pulled from MSDN Subscriber Downloads, it looks like Microsoft has just re-posted VB6 (Professional and Enterprise versions) for download again. Bad news for those folks planning on making a killing by selling their VB6 CDs for a premium on EBay. ;)
We've got a ton of VB6 code around still, and despite what MS might want you to believe, it's NOT going to be easy to port to VB.NET. Perhaps MS is starting to accept that fact. -
Running Windows on a MacBook - forgetting something?
A common meme going around the blogosphere right now is "my next Windows laptop will be a MacBook". Although I understand the sentiment - they do make very nice laptop hardware - I wonder if these people have noticed something rather important (at least, important to me). From the pictures I've seen of the MacBook, it still only has one mouse button. I don't know about you, but I don't relish the idea of running Windows without a right mouse button.
It's possible that I'm wrong, that the pictures are deceptive, and there's actually two buttons in there (or maybe some kind of two zone button bar, similar to their mouse). But without that, the idea of a VistaBook is a non-starter to me. -
Free and easy way to resize an NTFS partition
I recently had the need to resize the virtual disk on the VMWare image. VMWare includes a handy tool for resizing a virtual disk, but of course that doesn't resize the partition on the disk. Partition Magic has long been the tool of choice for this kind of thing, but this time I decided to see if there was anything else "out there". Turns out there is - a utility called Ntfsresize.
Ntfsresize is actually a Linux command-line utility which is included, along with a fairly easy to use GUI called QTPartEd, on a variety of Linux distributions. In particular, it's included on the Knoppix LiveCD (at the moment not the absolute latest version of Ntfsresize, but near enough), which means you can boot straight from a CD and resize your partitions without having to install any software at all. The GUI was easy enough that even a Linux novice like me could figure it out. VERY handy, and it worked great on my VM image. Recommended. -
Sometimes I really hate Quicken
I've used Quicken for my personal finances for years, and generally, it works fine. But sometimes when things go wrong in Quicken, they go really wrong. I hit one of those situations this weekend, and it cost me half a days work.
The problem started with a situation that didn't seem so bad at first - a couple of register items ended up erroneously flagged as reconciled. I'm not sure how it happened - they were well after the date of the last statement - but it seemed like it shouldn't be hard to fix. Wrong. Several wasted hours later (which included two chat support calls to Intuit), I end up restoring from a backup and re-entering months of transactions. Apparently the ability to re-reconcile a months transactions is too much to ask for. Even the trick of deleting previous reconciliation statements I've used with previous versions of Quicken doesn't seem to work in the 2005 version - that option seems to have disappeared from the UI.
Message to Intuit - if something as simple as recovering from a reconciliation error requires restoring from a backup, it's time for a little usability work.