The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Why doesn’t <CODE>LVIF_<WBR>INDENT</CODE> work without an image list?
Jul 4, 2025
Post comments count 2
Post likes count 0

Why doesn’t LVIF_INDENT work without an image list?

Raymond Chen
Raymond Chen

Its original client had an image list.

German language cheat sheet: On changing quantities
Jul 3, 2025
Post comments count 12
Post likes count 0

German language cheat sheet: On changing quantities

Raymond Chen
Raymond Chen

How much there is, and how is it changing.

If the <CODE>Format­Message</CODE> function fails, and I requested that it allocate a buffer, do I have to free the buffer?
Jul 3, 2025
Post comments count 0
Post likes count 1

If the Format­Message function fails, and I requested that it allocate a buffer, do I have to free the buffer?

Raymond Chen
Raymond Chen

There was no buffer returned, so there's nothing to free anyway.

Unintended yet somehow entirely expected consequences of marking a COM interface as local
Jul 2, 2025
Post comments count 1
Post likes count 1

Unintended yet somehow entirely expected consequences of marking a COM interface as local

Raymond Chen
Raymond Chen

If it's local-only, then it can't be remote.

The sizzle reel that says things that nobody understands
Jul 1, 2025
Post comments count 0
Post likes count 0

The sizzle reel that says things that nobody understands

Raymond Chen
Raymond Chen

Failing to understand your audience.

2025 mid-year link clearance
Jun 30, 2025
Post comments count 1
Post likes count 1

2025 mid-year link clearance

Raymond Chen
Raymond Chen

Halfway there.

Embracing the power of the empty set in API design: Requesting zero items
Jun 30, 2025
Post comments count 16
Post likes count 3

Embracing the power of the empty set in API design: Requesting zero items

Raymond Chen
Raymond Chen

It's okay to ask for nothing. You get nothing.

Why do I get errors or warnings about some weird symbol called ?main@@YAHP$01E$AAV?$Array@PE$AAVString@Platform…, part 3
Jun 27, 2025
Post comments count 8
Post likes count 0

Why do I get errors or warnings about some weird symbol called ?main@@YAHP$01E$AAV?$Array@PE$AAVString@Platform…, part 3

Raymond Chen
Raymond Chen

Forcing main to be found in the place we want.

Why do I get errors about some weird symbol called ?main@@YAHP$01E$AAV?$Array@PE$AAVString@Platform…, part 2
Jun 26, 2025
Post comments count 0
Post likes count 0

Why do I get errors about some weird symbol called ?main@@YAHP$01E$AAV?$Array@PE$AAVString@Platform…, part 2

Raymond Chen
Raymond Chen

Figuring out why C++/CX makes a difference.