The Old New Thing

Why does FindFirstFile find short names?

The function matches both the short and long names. This can produce somewhat surprising results. For example, if you ask for "*.htm", this also gives you the file "x.html" since its short name is "X~1.HTM". Why does it bother matching short names? Shouldn't it match only long names? After all, only old 16-bit programs use short names. ...

What is the deal with the ES_OEMCONVERT flag?

The edit control style is a holdover from 16-bit Windows. This ancient MSDN article from the Windows 3.1 SDK describes the flag thus: ES_OEMCONVERT causes text entered into the edit control to be converted from ANSI to OEM and then back to ANSI. This ensures proper character conversion when the application calls the AnsiToOem function to ...

Watching the game of “Telephone” play out on the Internet

Let's see if I can get this straight. First, Chris Pirillo says (timecode 37:59) he's not entirely pleased with the word "podcast" in Episode 11 of This Week in Tech. The Seattle-PI then reports that the sentiment is shared with "several Microsoft employees" who have coined the word "blogcast" to replace it. Next, c|net picks up the story...

If InitCommonControls doesn’t do anything, why do you have to call it?

One of the problems beginners run into when they start using shell common controls is that they forget to call the function. But if you were to disassemble the function itself, you'll see that it, like the function, doesn't actually do anything. Then why do you need to call it? As with , what's important is not what it performs, but ...

When Marketing edits your PDC talk description

A few years ago, I told a story of how Marketing messed up a bunch of PDC slides by "helpfully" expanding acronyms... into the wrong phrases. Today I got to see Marketing's handiwork again, as they edited my talk description. (Oh, and psst, Marketing folks, you might want to link to the full list of PDC sessions from your Conference Tracks ...