The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Oct 29, 2026
Post comments count 5
Post likes count 1

The support case of a customer who said that all they could see was a black screen

Raymond Chen

Then again, that is what they asked for.

Oct 28, 2026
Post comments count 1
Post likes count 3

C++/WinRT overcorrection: Using make_self and immediately converting it to the projected interface

Raymond Chen

You are taking the scenic route.

Oct 27, 2026
Post comments count 9
Post likes count 5

Why don’t we run the taskbar and Task Manager at high priority, so they can remain responsive?

Raymond Chen

Hurry up and wait.

Oct 26, 2026
Post comments count 8
Post likes count 5

Puzzling out why a program doesn’t work when run from a batch file, but works when double-clicked from Explorer

Raymond Chen

Mimicking the operation more accurately.

Oct 23, 2026
Post comments count 3
Post likes count 3

Why didn’t we use the COM static store to clean up the unmarshalable delegate?

Raymond Chen

It cleans up at the wrong time.

Oct 22, 2026
Post comments count 0
Post likes count 3

Why didn’t we use Co­Register­Initialize­Spy to clean up the unmarshalable delegate?

Raymond Chen

Looking more closely at the function's behavior and requirements.

Oct 21, 2026
Post comments count 0
Post likes count 3

Why didn’t we use Ro­Register­For­Apartment­Shutdown to clean up the unmarshalable delegate?

Raymond Chen

Too many requirements, some of which bring us full circle.

Oct 20, 2026
Post comments count 1
Post likes count 2

Microspeak: Drain the slide, back-up slides

Raymond Chen

PowerPoint presentation jargon.

Oct 19, 2026
Post comments count 9
Post likes count 3

Why do we need ud2 when int 6 is right there?

Raymond Chen

An interrupt is not a fault.