The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

What if a dialog wants to intercept its own message loop?
Mar 27, 2026
Post comments count 0
Post likes count 0

What if a dialog wants to intercept its own message loop?

Raymond Chen
Raymond Chen

You can steal them from your owner.

Why doesn’t <CODE>WM_<WBR>ENTER­IDLE</CODE> work if the dialog box is a <CODE>Message­Box</CODE>?
Mar 26, 2026
Post comments count 0
Post likes count 3

Why doesn’t WM_ENTER­IDLE work if the dialog box is a Message­Box?

Raymond Chen
Raymond Chen

Because it opted out.

How can I change a dialog box’s message loop to do a <CODE>Msg­Wait­For­Multiple­Objects</CODE> instead of <CODE>Get­Message</CODE>?
Mar 25, 2026
Post comments count 1
Post likes count 3

How can I change a dialog box’s message loop to do a Msg­Wait­For­Multiple­Objects instead of Get­Message?

Raymond Chen
Raymond Chen

The dialog box lets you change how it waits.

Windows 95 defenses against installers that overwrite a file with an older version
Mar 24, 2026
Post comments count 6
Post likes count 6

Windows 95 defenses against installers that overwrite a file with an older version

Raymond Chen
Raymond Chen

A very primitive version of recovery.

How can I make sure the anti-malware software doesn’t terminate my custom service?
Mar 23, 2026
Post comments count 12
Post likes count 3

How can I make sure the anti-malware software doesn’t terminate my custom service?

Raymond Chen
Raymond Chen

You'll have to ask nicely.

Windows stack limit checking retrospective: arm64, also known as AArch64
Mar 20, 2026
Post comments count 6
Post likes count 2

Windows stack limit checking retrospective: arm64, also known as AArch64

Raymond Chen
Raymond Chen

Wrapping things up.

Windows stack limit checking retrospective: amd64, also known as x86-64
Mar 19, 2026
Post comments count 8
Post likes count 3

Windows stack limit checking retrospective: amd64, also known as x86-64

Raymond Chen
Raymond Chen

Reaching the modern day.

Windows stack limit checking retrospective: Alpha AXP
Mar 18, 2026
Post comments count 1
Post likes count 1

Windows stack limit checking retrospective: Alpha AXP

Raymond Chen
Raymond Chen

Double the size, double the fun.

Windows stack limit checking retrospective: x86-32 also known as i386, second try
Mar 17, 2026
Post comments count 2
Post likes count 4

Windows stack limit checking retrospective: x86-32 also known as i386, second try

Raymond Chen
Raymond Chen

Appeasing the invisible return address predictor.