Archive for May, 2007

Don’t forget to go over those TODO before releasing…

May 28, 2007

I’m looking for an online backup solution for my (and my wife’s) documents. At first I thought Gspace will do the trick, but it only runs as part of Firefox and doesn’t know how to do background backups, so I’ll probably go with Mozy, which looks promising. Of course, my main concern in picking a backup provider, apart from price, is its reliability, so it won’t just disappear one day, and this make Gmail a major candidate, but I guess Mozy is also safe, as I hear a lot of people recommending it.

However, during the test, I inspected Xdrive, which looked nice, but it appears it doesn’t really support Hebrew filenames very well, which is quite crucial, so this one is no longer an option. However, due to my laziness, I haven’t uninstalled it yet.

Today I saw the Xdrive icon is in my system tray, and wanted to stop it. Since it didn’t have menu item or a command to stop it, I went to Process Explorer. I saw that it had two process related to it: XdriveService.exe and XdriveTray.exe. Then I noticed the process description and company name of XdriveTray.exe – TODO: <File description> and TODO: <Company name>. Oops. I guess the developers forgot to change that in the resource file created by their IDE…

KatMouse enables mouse wheel for VB6 and Remedy

May 7, 2007

Via LiefHacker, I just found KatMouse.

The main goal of this small utility is to enable scrolling with the mouse wheel in windows that don’t have the keyboard focus.

But I mainly find it useful to use the mouse wheel in applications that don’t handle mouse wheel event. Up until now, I found two such applications that I use – Visual Basic 6, in which I still fill at home for some quick tasks like testing our COM class library, and Remedy User which we recently switched to for customer support and bug tracking.

KatMouse simply sends the correct message to those application and makes the mouse wheel works for them. I did find some problems with it – it disabled the mouse wheel in Excel 2007 worksheets and in Word 2007 Document Map sidebar. Fortunately, KatMouse provides an ultra-easy way to configure it to ignore specific window classes, using a Spy++ like windows finder, so the problem was quickly and easily solved.

The only problem that still remains is that my Dell D620 mouse-pad doesn’t have a mouse wheel… :(

Update: There is one problem I found with KatMouse which I couldn’t resolve. In Excel 2007, when you do data filtering, and click the arrow at one of the title cells, you get a complex menu with some options like sort and advanced filtering, and also a list of all values in the column so you can select from it. This list doesn’t handle mouse wheel events. It didn’t bother me until now – like any window with no wheel support, I’d try using the mouse wheel, and when it didn’t work, I would scroll with the scrollbar. However, when KatMouse is active, using the mouse wheel causes the special filter menu to disappear. The problem is I can’t find out how to tell KatMouse not to handle mouse wheel events for this menu, as it disappears on every mouse click or key down, so I can’t get its window class. Not such a big nuisance, but nevertheless…

Update 2: One additional place I found KatMouse useful is with DiskFrontier which does not support mouse wheel which tends to be really annoying. A quick class customization in KatMouse solved the old problem.

Update 3 (25/12/2008): When I recently showed KatMouse to a colleauge, I went to KatMouse homepage, and noticed that version 1.04 was released shortly after this post was published. This version adds support to Office 2007, and solves the annoying problem mentioned in the first update and adds mouse wheel support to Excel 2007 filter menu.

Second rename command in Total Commander

May 7, 2007

I use Total Commander to manage my files. I find it invaluable. Today, I accidentally discovered a great feature it has which I was not aware of.

One of the nuisances of renaming a file is to remember to keep the extension, since when I enter the “inplace rename” mode, the entire filename can be edited, including the extension.

I just noticed that when I repeat the command that starts the “inplace rename” mode, only the filename without the extension is selected, which makes it very handy to rename the file while keeping the extension.

From my tests, this only works if you use the keyboard shortcut to start the “inplace rename” mode. By default it is Shift-F6. In my configuration, F2 also does the same thing, to be compatible with Windows Explorer. However, other methods to enter the “inplace rename” mode, such as clicking the report name twice or using File menu -> Basic File Handling -> Rename (Inline) doesn’t have this effect.

Searching some more, I noticed this is explicitly mentioned in the online help, in the “F6: Rename / Move” topic. It also mention another nice feature:

When renaming a ZIP file to an EXE file, Total Commander will ask if you want to create a self extracting ZIP archive. If you choose ‘yes’, the EXE file will be converted.

Joost invitations

May 2, 2007

Kim has sent me an invitation to Joost. I’m still looking for some thing I want to see there, but meanwhile, I noticed I can send invitations, so if you want some, leave your e-mail in the comments.

Greasemonkey wish: Auto-update user scripts

May 1, 2007

I’m the kind of guy who likes to know when a new version of a software I use is released, and update whenever I can (I guess this is why I installed Office 2007 when it was in Beta). This is why I use Update Notifier Firefox extension, which automatically checks for Firefox add-ons when Firefox starts.

I think Greasemonkey should evolve to support such mechanism for user scripts – each user script should be able to mention its current version and its URL as part of its metadata and then Greasemonkey can periodically check if the user script is updated. As it is now, I might find a script on and install it, but I won’t know that the script was later improved by its author. I think this would be great.

update: while wondering around, I found this script which seems to do what I want. I’ll look into it tomorrow.