Showing results for November 2003 - Page 3 of 3 - The Old New Thing

Nov 11, 2003
Post comments count0
Post likes count0

Safer subclassing

Raymond Chen
Raymond Chen

Answer to yesterday's homework assignment, with discussion.

Code
Nov 10, 2003
Post comments count0
Post likes count0

Homework assignment about window subclassing

Raymond Chen
Raymond Chen

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

Code
Nov 10, 2003
Post comments count0
Post likes count0

A warning to people averse to code

Raymond Chen
Raymond Chen

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.

Other
Nov 10, 2003
Post comments count0
Post likes count0

How much do you expect from a framework layer?

Raymond Chen
Raymond Chen

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 frame...

Other
Nov 7, 2003
Post comments count0
Post likes count0

Returning values from a dialog procedure

Raymond Chen
Raymond Chen

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: Since tw...

Code
Nov 6, 2003
Post comments count0
Post likes count0

Little facts you didn't know about concrete

Raymond Chen
Raymond Chen

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

Non-ComputerNews flash
Nov 6, 2003
Post comments count0
Post likes count0

Why are companies so worried about retraining costs?

Raymond Chen
Raymond Chen

Remember, most people do not view the computer as a world to be explored. It is merely a means to an end. So they learn the five steps they need to follow, and if they can't do them, they get stuck. "I hit Alt+Tab like I always do, to switch to another program, but instead of switching, this strange window show...

Other
Nov 5, 2003
Post comments count0
Post likes count0

An anecdote about improper capitalization

Raymond Chen
Raymond Chen

I've already discussed some of the strange consequences of case-sensitive comparisons. Joe Beda mentioned the Internet Explorer capitalization bug that transformed somebody's name into a dead body. Allow me to elaborate. You might learn something. This bug occurred because ...

Other
Nov 4, 2003
Post comments count0
Post likes count0

Just follow the rules and nobody gets hurt

Raymond Chen
Raymond Chen

You may have been lazy and not bothered calling VirtualProtect(PAGE_EXECUTE) when you generated some code on the fly. You got away with it because the i386 processor page protections do not have a "read but don't execute" mode, so anything you could read you could also execute. Until ...

Code
Nov 3, 2003
Post comments count0
Post likes count1

The long and sad story of the Shell Folders key

Raymond Chen
Raymond Chen

When you are attempting to architect an operating system, backwards compatibility is one of the ones you just have to accept. But when new programs rely on app hacks designed for old programs, that makes you want to scream.

CodeHistory