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?
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?
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
Reported incorrectly since the day it was written.
May 15, 2026
Post comments count
2
Post likes count
2
The case of the CreateFileMapping that always reported ERROR_ALREADY_EXISTS
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
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
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?
Compatibility, of course.
May 11, 2026
Post comments count
5
Post likes count
3
Additional notes on controlling which handles are inherited by CreateProcess
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 ReadDirectoryChangesW
You can track the file ID.