Raymond Chen

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

Post by this author

It rather involved being on the other side of this airtight hatchway: System corruption caused by an administrator

If your goal was to corrupt the system, you sure are doing it the hard way.

Windows debugger trick: Breaking when a specific debugger message is printed

A different kind of conditional breakpoint.

The history of computing, as told by the hallways of Microsoft Building 41

A walk through history, in the form of wall textures.

Subroutine calls in the ancient world, before computers had stacks or heaps

A lot of computing got done even before we had stacks and heaps.

How can I tell C++ that I want to discard a nodiscard value?

A variety of tricks, with different degrees of readability and legality.

I called Create­Environment­Block with a process’s token, but I didn’t get that process’s environment

That's not what the Create­Environment­Block function does.

Some choices for encrypting data so that it can be decrypted only by the same user or computer

There's your classic, and there's some newfangled stuff.

Dubious security vulnerability: Manual operations can cause a program to hang

You did this to yourself.

Why isn’t C++ using my default parameter to deduce a template type?

Trying to have it both ways.

Why does my thread get a broken string as its initial parameter?

It got converted too late.