The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

BERJAYA
May 19, 2026
Post comments count 0
Post likes count 0

What is the history of the ERROR_ARENA_TRASHED error code?

BERJAYA
Raymond Chen

The storage control blocks were destroyed.

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

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

BERJAYA
Raymond Chen

Reported incorrectly since the day it was written.

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

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

BERJAYA
Raymond Chen

Maybe because it already exists?

BERJAYA
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

BERJAYA
Raymond Chen

Using data structures you already knew.

BERJAYA
May 13, 2026
Post comments count 5
Post likes count 4

The case of the hang when the user changed keyboard layouts

BERJAYA
Raymond Chen

Keeping things moving.

BERJAYA
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?

BERJAYA
Raymond Chen

Compatibility, of course.

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

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

BERJAYA
Raymond Chen

Putting the handles in a private container.

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

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

BERJAYA
Raymond Chen

You can track the file ID.

BERJAYA
May 7, 2026
Post comments count 3
Post likes count 3

When you upgrade your resource strings to Unicode, don’t forget to specify the L prefix

BERJAYA
Raymond Chen

Otherwise, it'll get mapped back down to the 8-bit code page.