The Old New Thing
Practical development throughout the evolution of Windows.
Latest posts
May 5, 2026
Post comments count
6
Post likes count
2
A dispute over the TAB key highlights a mismatch between Microsoft and IBM organizational structures
I want to speak to your manager.
May 4, 2026
Post comments count
1
Post likes count
2
How do I inform Windows that I’m writing a binary file?
You don't. All files are binary at the file system level.
May 1, 2026
Post comments count
0
Post likes count
1
Developing a cross-process reader/writer lock with limited readers, part 4: Abandonment
Recovering from death of the owner.
Apr 30, 2026
Post comments count
3
Post likes count
2
Developing a cross-process reader/writer lock with limited readers, part 3: Fairness
Let the exclusive acquisition have a fair chance against shared acquisitions.
Apr 29, 2026
Post comments count
1
Post likes count
2
Developing a cross-process reader/writer lock with limited readers, part 2: Taking turns when being grabby
Please, not everybody, everything all at once.
Apr 28, 2026
Post comments count
11
Post likes count
2
Developing a cross-process reader/writer lock with limited readers, part 1: A semaphore
A pot of tokens.
Apr 27, 2026
Post comments count
9
Post likes count
2
Looking at consequences of passing too few register parameters to a C function on various architectures
It's bad news no matter how you slice it, but Itanium makes it even worse.
Apr 24, 2026
Post comments count
3
Post likes count
2
Defending against exceptions in a scope_exit RAII type
But maybe it's not worth it.
Apr 23, 2026
Post comments count
12
Post likes count
2
Another crash caused by uninstaller code injection into Explorer
Inadvertently destroying a staircase while standing on it.