DateTimeControls 1.0.0

I’ve finished two new controls: A date-time picker and a calendar. If you’re tired of the no-themes-support of the corresponding controls from Microsoft, you should give the new controls a try. Of course they also support Unicode, drag’n’drop and so on.

The controls are my hobby and I’ve not much spare time, so don’t expect too many releases in 2009. But I’ll release a highly updated ExplorerListView control soon. The next new controls (among ShellBrowser) will be ComboBox, DriveComboBox, ImageComboBox and ListBox.

Oh, by the way, DateTimeControls officially supports Windows 7 Beta 1.

EditControls 1.3.2

EditControls has had another bug. The MultiLine property of the TextBox control could not be changed after control window creation – or better: the change had no effect. The control now destroys and recreates itself if this property is changed.

EditControls 1.3.1

Two bugs have been found in EditControls 1.3.0. If you put a TextBox (or any other of the controls) onto a VB6 UserControl and put several instances of this UserControl onto a VB6 Form, you could set focus to the TextBox controls by pressing the TAB key, but once the TextBox had the focus, pressing the TAB key didn’t move the focus to the next control.

The other bug had to do with Aero drag images and occured on Windows x64 only. If you dragged data from a 64 bit application over the controls (which are 32 bit), the drop description of the Aero drag image didn’t reflect the current drop effect. Everything worked fine if the drag source was 32 bit, too.

Version 1.3.1 fixes both bugs.

Why the desktop search of Windows Vista sucks

A week ago, I’ve upgraded from Windows XP SP3 to Vista x64 SP1. I already had been using Vista in early 2007 for ~2 months, but downgraded again due to its poor performance, bad driver support and many small annoyances. One thing that drove me nuts in 2007 already, is the new desktop search. While performance, driver support and so on have become much better since then, I still don’t like the new desktop search. Let me show you why.

Yesterday I wanted to search all files within C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\atlmfc\src\mfc for the string IOleInPlaceActiveObject. This folder and its sub-directories contain a total of 476 files. I browsed to this folder and the first problem arose: How do I search for file contents? There’s just this search box in the top-right corner. What do I enter there? The filename patterns I want to search for? The content I want to search for? Both? If both: in which syntax do I enter it? I decided to just enter IOleInPlaceActiveObject into this box and hit Enter.

The search was finished immediately, but didn’t find anything which I knew was wrong. But now Explorer displayed a link Search File Contents which I clicked. The search started again. I waited one minute. Still no file was found and the search was still running. I waited two minutes – no found file, search still running. Finally, after four minutes, the search was complete and now six hits were displayed. I couldn’t believe that searching 476 files for a specific string would take 4 minutes, so I started xplorer² and told it to search the directory again for the same string. It took less than 1 second and 19 files were found. This started to become interesting…

The first question that came to my mind was why Explorer finds 6 files and xplorer² 19 files. The answer is that xplorer² really searches all files while Explorer skips binary files. Okay, so Explorer tries to be smart and for most users skipping binary files indeed is a good idea. But not for me. Sometimes I want to search binaries for a specific content. How do I tell Explorer to not skip them then?

The second question was why does Explorer need about 240x the time that xplorer² needs although it doesn’t even search within binary files?? Yes, the directory is not part of my search index. But xplorer² doesn’t use any index either! What the hell is Explorer doing that it is so much slower???

So if you don’t want to miss any file no matter which directory on your hard disk you search, you’ll have to tweak the indexing service to include all directories and any file type or you’ll have died before the end of the search. But can the indexing service be tweaked to include binary files? I’m not sure and I won’t try it because indexing my whole hard disk would probably take a day or two and keeping this index current would probably put some nice extra load to my hard disk.

I also don’t understand why found files are not displayed before the end of the search. Imagine a search that will result in hundreds of hits, but take half an hour to complete. You have to wait 30 minutes, in which you already could work with the first hits, and then you get hundreds of hits at once. Yeah! Great!

For me the Vista desktop search is just crap. Its usability is poor, it is extremely slow as soon as the index can’t be used and it swallows hits. The search of Windows XP wasn’t that much better, but on XP you could activate the legacy search that was the default up to Windows 2000 and I always used this one.

So whenever I have to search something on my hard disk, I’ll start xplorer² and search it there. Let’s see what annoying things Windows 7 will introduce…

ExplorerTreeView 2.0.0 RC1

The last release of ExplorerTreeView 2.0 was Beta 4 and it was 3 years ago!! Time for an update, I guess.

So here’s the first release candidate of 2.0. The changelog is long – very long. The biggest changes are the Vista support and the interface for the upcoming ShellBrowser control. There are also some changes that break compatibility, but that’s why I called the previous releases beta. Support for multiselect, background images and Windows 98/ME/NT4 has been dropped.

I thought about also providing the last build compatible with 98/ME/NT4 like I do with the other controls. But I made too many important bugfixes after the upgrade to Visual Studio 2008, so there would not be much use for this build.

Some final words about ShellBrowser: The treeview part of this control is finished (needs testing though). The listview part of it needs some more love, but there are good chances that we’ll see a first beta release before the end of the year.

EditControls 1.3.0, ProgressBar 2.1.1 and StatusBar 1.1.1

Here are three more releases. EditControls 1.3.0 brings some new features for the TextBox, namely the read-only properties LastVisibleLine, LineHeight and TextLength. There’s also a new VB6 sample which demonstrates how to display line numbers. It’s not perfect, but a point to start from.

ProgressBar 2.1.1 and StatusBar 1.1.1 are bugfix releases.

The drop of support for Windows 98, ME and NT 4.0 that I mentioned in the last news, applies to these releases, too.

Animation 2.1.1, ButtonControls 1.3.1

While updating the website, I’m also uploading new versions of my controls. The first ones are Animation 2.1.1 and ButtonControls 1.3.1 – two bugfix releases. I’ve dropped support for Windows 98, ME and NT 4.0 because I’ve upgraded to Visual C++ 2008 and the new compiler doesn’t support these systems anymore. If someday I have MUCH spare time, maybe I’ll install Visual C++ 2005 again, just to provide up-to-date versions for Windows 98, ME and NT 4.0, but that’s not very likely to happen.

Website relaunch

Today I’ve decided to finally do something I wanted to do for about one year: Relaunch the website with a fresh design.

You may have recognized WordPress and phpBB3. While importing data from the old forum to the new one was easy, the front page creates much work. One problem is that WordPress and phpBB3 have no adequate replacements for some of the features of the old phpBB2+. It will take some days before the new page is fully working.

Writing comments to the news should be possible with your forum account. Please let me know whether this is working. Maybe in the future I’ll find a solution to make it possible to use the bugtracker with the forum account, so you’ll need only one account to use all features of this website.

Please report any problems with the new site that you come across.