Raymond Chen

Raymond has been involved in the evolution of Windows for more than 25 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 currently appears regularly on MSDN Channel 9’s One Dev Minute channel in the One Dev Question video series.

Post by this author

Another different type of dialog procedure

The other method of using a window-procedure-like dialog box is to change the rules of the game. Normally, the window procedure for a dialog box is the DefDlgProc function, which calls the dialog procedure and then takes action if the dialog procedure indicated that it desired the default action to take place. The dialog procedure is ...
Comments are closed.0 0
Code

Answer to previous exercise about m_fRecursing

Answer to previous exercise: The m_fRecursing flag does not need to be per-instance. It only needs to be valid long enough that the recursive call that comes immediately afterwards can be detected. However, a global variable would not work because two threads might be inside the recursive DefDlgProc call simultaneously. But a thread-local ...
Comments are closed.0 0
Code

A different type of dialog procedure

In the discussion following my entry about dialog procedure return values, somebody suggested an alternate dialog design where you just call DefDlgProc to do default actions (the same way you write window procedures and DefWindowProc) rather than returning TRUE/FALSE. So let's do that. In fact, we're going to do it twice. I'll cover one ...
Comments are closed.0 0
Code

Welcome Martyn Lovell

Martyn Lovell from the VC++ team has joined the world of blogging. Martyn is a smart guy, even though he does spell some words funny...

Safer subclassing

Answer to yesterday's homework assignment, with discussion.
Comments are closed.0 0
Code

Homework assignment about window subclassing

Window subclassing is trickier than you think. Consider this code sketch: What could go wrong? We'll discuss it tomorrow...
Comments are closed.0 0
Code

How much do you expect from a framework layer?

If a framework exposes functionality provided by a lower layer, how hard should the framework try to insulate you from all the quirks and limitations of the lower layer? Instinctively, of course, you would say, "The framework should insulate me completely." But be careful what you ask for. If a ...

A warning to people averse to code

This is going to be a code-heavy week. People who are averse to code may want to just lie low until next week. I'll try to make it up by having next week be more storytelling-focused...

Returning values from a dialog procedure

For some reason, the way values are returned from a dialog procedure confuses people, so I'm going to try to explain it a different way. The trick with dialog box procedures is realizing that they actually need to return two pieces of information: ...
Comments are closed.0 0
Code

Little facts you didn't know about concrete

Concrete is stronger once it has hardened. Thanks, Associated Press! I learn something new every day...

Feedback usabilla icon