The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

The 2025/2026 Seattle Symphony subscription season at a glance
Mar 28, 2025
0
0

The 2025/2026 Seattle Symphony subscription season at a glance

Raymond Chen
Raymond Chen

The pocket reference guide for 2025/2026.

Fixing exception safety in our <CODE>task_<WBR>sequencer</CODE>
Mar 28, 2025
0
0

Fixing exception safety in our task_sequencer

Raymond Chen
Raymond Chen

Exception safety, the forgotten requirement.

On launching a dialog when a specific combo box item is selected
Mar 27, 2025
5
2

On launching a dialog when a specific combo box item is selected

Raymond Chen
Raymond Chen

Changing selections is not a good time to launch a dialog box.

Why does <ODE>INVALID_<WBR>HANDLE_<WBR>VALUE</CODE> cast through a <CODE>LONG_PTR</CODE> first?
Mar 26, 2025
0
2

Why does INVALID_HANDLE_VALUE cast through a LONG_PTR first?

Raymond Chen
Raymond Chen

To ensure that the proper sign extension happens.

We’ll fly you to Atlanta, Texas, and getting to your hotel in Atlanta, Georgia is your problem
A note on the USB-to-PS/2 mouse adapter that came with Microsoft mouse devices
Mar 25, 2025
7
2

A note on the USB-to-PS/2 mouse adapter that came with Microsoft mouse devices

Raymond Chen
Raymond Chen

It's a purely mechanical adapter that relies on smarts in the mouse itself.

On how different Windows ABIs choose how to pass 32-bit values in 64-bit registers
Mar 24, 2025
11
2

On how different Windows ABIs choose how to pass 32-bit values in 64-bit registers

Raymond Chen
Raymond Chen

Surveying the options and looking for commonalities.

The case of the critical section that let multiple threads enter a block of code
What could cause a memory corruption bug to disappear in safe mode?
Mar 20, 2025
4
0

What could cause a memory corruption bug to disappear in safe mode?

Raymond Chen
Raymond Chen

A simplified execution environment means fewer things that you can stumble over.