The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

May 20, 2026
Post comments count 1
Post likes count 0

The classic TreeView control lets me sort by name or by lParam, but why not both?

Raymond Chen

You need to arrange to get one from the other.

May 19, 2026
Post comments count 3
Post likes count 5

What is the history of the ERROR_ARENA_TRASHED error code?

Raymond Chen

The storage control blocks were destroyed.

May 18, 2026
Post comments count 4
Post likes count 6

Just shows that nobody cares about debugging the parity flag any more

Raymond Chen

Reported incorrectly since the day it was written.

May 15, 2026
Post comments count 2
Post likes count 2

The case of the Create­File­Mapping that always reported ERROR_ALREADY_EXISTS

Raymond Chen

Maybe because it already exists?

May 14, 2026
Post comments count 5
Post likes count 2

A constant-space linear-time algorithm for deleting all but the 10 most recent files in a directory

Raymond Chen

Using data structures you already knew.

May 13, 2026
Post comments count 6
Post likes count 4

The case of the hang when the user changed keyboard layouts

Raymond Chen

Keeping things moving.

May 12, 2026
Post comments count 12
Post likes count 2

Why do Windows client editions on 32-bit x86 systems artificially limit RAM to 4 GB?

Raymond Chen

Compatibility, of course.

May 11, 2026
Post comments count 5
Post likes count 3

Additional notes on controlling which handles are inherited by Create­Process

Raymond Chen

Putting the handles in a private container.

May 8, 2026
Post comments count 8
Post likes count 4

Developing more confidence when tracking renames via Read­Directory­ChangesW

Raymond Chen

You can track the file ID.