The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

May 26, 2025
Post comments count 2
Post likes count 1

Why does Enum­Process­Modules report no modules on a process that was created suspended?

Raymond Chen

There are no modules yet because you didn't give them a chance to load.

May 23, 2025
Post comments count 6
Post likes count 4

How can I detect if one of my helper processes is launching child processes?

Raymond Chen

You can ask a job object to keep track for you.

May 22, 2025
Post comments count 4
Post likes count 3

How can I create a window the size of the screen without it being treated as a fullscreen window?

Raymond Chen

You can declare that you aren't rude.

May 21, 2025
Post comments count 5
Post likes count 3

Silly parlor tricks: Promoting a 32-bit value to a 64-bit value when you don’t care about garbage in the upper bits

Raymond Chen

Inline assembly that doesn't do anything.

May 20, 2025
Post comments count 7
Post likes count 3

Why does Windows report my processor speed twice, with slightly different values?

Raymond Chen

One is calculated. The other is self-promotion.

May 19, 2025
Post comments count 1
Post likes count 2

Secret passages on Microsoft main campus, episode 3

Raymond Chen

Another covered passage between buildings.

May 16, 2025
Post comments count 8
Post likes count 2

What’s with the weird wReserved value at the start of the DECIMAL structure?

Raymond Chen

It's where the discriminant goes when the <CODE>DECIMAL</CODE> is put "inside" a <CODE>VARIANT</CODE>.

May 15, 2025
Post comments count 6
Post likes count 2

How do I force RunOnce commands to run in a specific order?

Raymond Chen

Run them in the desired order yourself.

May 14, 2025
Post comments count 0
Post likes count 2

If I mark my thread pool callback as long-running, does it still count toward the thread pool thread limit?

Raymond Chen

Yes, because it's still in the thread pool.