The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Customizing item enumeration with IShellItem, the old-fashioned way
Feb 2, 2015
Post comments count 0
Post likes count 0

Customizing item enumeration with IShellItem, the old-fashioned way

Raymond Chen
Raymond Chen

Driving it manually.

Got errands? Now is the time
Jan 30, 2015
Post comments count 0
Post likes count 0

Got errands? Now is the time

Raymond Chen
Raymond Chen

Everybody else is watching the game.

Creating a shared memory block that can grow in size
Jan 30, 2015
Post comments count 0
Post likes count 2

Creating a shared memory block that can grow in size

Raymond Chen
Raymond Chen

The SEC_RESERVE flag.

Color-aware ClearType requires access to fixed background pixels, which is a problem if you don't know what the background pixels are, or if they aren't fixed
Jan 29, 2015
Post comments count 0
Post likes count 0

Color-aware ClearType requires access to fixed background pixels, which is a problem if you don't know what the background pixels are, or if they aren't fixed

Raymond Chen
Raymond Chen

ClearType is a technology that blends text pixels with background pixels with the goal of reducing visual artifacts during text rendering.¹ If you go for the full-meal version of ClearType, it uses knowledge about the physical properties of LCD screens in order to carry out its work. Some time ago, I noted one catch with this model, which is that overdraw gives the ClearType algorithm the wrong background pixels. Another gotcha is that if you don't know what the background pixels are at all, then you can't use ClearType. For example, you might be rendering a semi-transparent bitmap that will be drawn on to...

The compiler can make up its own calling conventions, within limits
Jan 28, 2015
Post comments count 0
Post likes count 0

The compiler can make up its own calling conventions, within limits

Raymond Chen
Raymond Chen

Global optimizations.

Tip for trying to boost morale: Don't brag about your overseas trips
Jan 27, 2015
Post comments count 0
Post likes count 0

Tip for trying to boost morale: Don't brag about your overseas trips

Raymond Chen
Raymond Chen

Once upon a time, a senior manager held a team meeting to address low team morale. Attempting to highlight how important the project was, he opened by saying, "I just got back from ⟨faraway country⟩, meeting with some of our important clients, and..." This remark had exactly the opposite effect from what the manager intended. Instead of revitalizing the team, the team became even more despondent. "Here we are, working late and coming in on weekends, and this senior manager is telling us about his recent overseas junket." (After he left, I heard that he still pulled this stunt with his new team. "Over ...

Customizing item enumeration with IShellItem
Jan 26, 2015
Post comments count 0
Post likes count 0

Customizing item enumeration with IShellItem

Raymond Chen
Raymond Chen

Have it your way.

Helper functions to make shell bind contexts slightly more manageable
Jan 23, 2015
Post comments count 0
Post likes count 0

Helper functions to make shell bind contexts slightly more manageable

Raymond Chen
Raymond Chen

Setting the options.

The wonderful world of shell bind context strings
Jan 22, 2015
Post comments count 0
Post likes count 0

The wonderful world of shell bind context strings

Raymond Chen
Raymond Chen

A generic options parameter.