The Old New Thing

The Acorn Wand, key to a magical puzzle hunt

Puzzle hunts are a popular pastime at Microsoft. For the Microsoft Intern Puzzleday 2007, the puzzle design team decided upon a Harry Potter theme. Competitors ("students") formed teams ("study groups") as they attended classes at the Hogwarts campus at Microsoft. Of course, since this is Harry Potter, you need a magic wand, so the puzzle ...

Why doesn't Explorer show recursive directory size as an optional column?

"Why start up another program to see folder sizes, when they should just be right there, in Explorer, all the time?" The same reason \\ does not autocomplete to all the computers on the network: Because it would destroy corporate networks. Showing folder sizes "all the time" means that when you open, say, the root of a large server, ...

The King County Council race gets even stranger

I told you it was going to get weird. In the month since my last report, there have been a few developments in the county council race between an accused drunk (the incumbent) and a fringe candidate (the challenger). The Seattle Times tries to summarize the state of the race with a series of articles...

If you pass enough random numbers, eventually one of them will look valid

One customer traced a problem they were having to the way they were calling a function similar in spirit to this one: This function takes a clipboard format and looks for it on the clipboard. If found, it returns a copy of the data. Looks great, huh? The problem is that the customer would sometimes call the function as . The clipboard...

What's the deal with the EM_SETHILITE message?

If you look up the documentation on the and messages, they just say "not implemented". What's going on here? The and messages were added back in 2002 for the breadcrumb bar to use. Back in those days, the breadcrumb bar wasn't what you see in Windows Vista today, a series of buttons with drop-down arrows, each representing a level in the ...

What's the difference between LVM_HITTEST and LVM_INSERTMARKHITTEST?

One customer was confused by the two list view hit-test messages and . What is the difference between the two? The message tries to find the item the point is over. The message tries to find the item the point is next to. For example, suppose you have two 32×32 items, item zero at (0, 0) and item one at (0, 32). You use...