Showing results for May 2014 - Page 2 of 3 - The Old New Thing

May 20, 2014
0
0

The code names for various subprojects within Windows 95

Raymond Chen
Raymond Chen

Most people know that Windows 95 was code-named Chicago. The subprojects of Windows 95 also had their code names, in part because code names are cool, and in part because these projects were already under way by the time somebody decided to combine them into one giant project. Even when they were separate projects, the first three teams...

History
May 19, 2014
0
0

Creating a simple shell item, just as fake as a simple pidl

Raymond Chen
Raymond Chen

Continuing from Creating a simple pidl: For the times you care enough to send the very fake: Instead of creating a simple pidl, we'll create a simple shell item. The idea is the same. We build a file system bind context containing the information about the fake file, and we pass that bind context to the function. Take that program that creat...

Code
May 16, 2014
0
0

An extensible interlocked arithmetic function (via lambdas)

Raymond Chen
Raymond Chen

Some time ago, I noted that you can build other interlocked operations out of . Here's an example: (There's a corresponding C++ version, which I leave as an exercise.) This function atomically updates a "highest value seen so far" variable. It follows the usual pattern: Capture the starting value. Do a computation based on that value. Comp...

Code
May 14, 2014
0
0

The mystery of the icon that never appears

Raymond Chen
Raymond Chen

A customer reported a problem showing an icon on their dialog box. We verified that this code does execute during the handling of the message. No assertion fires, yet no icon appears either. Our dialog template says The customer did some helpful preliminary troubleshooting: Verify that the code does indeed execute. It sounds obvio...

Code
May 13, 2014
0
0

How do I change among the three levels of play in Space Cadet Pinball?

Raymond Chen
Raymond Chen

Many many years ago, a customer presumably was taking advantage of the unlimited support part of their support contract when they asked In the documentation for Space Cadet Pinball, it says... The game is divided into three levels of play: basic, intermediate, and advanced. The objective of all levels is to achieve the highest point total. The...

Tips/Support
May 12, 2014
0
0

Enumerating bit sequences with isolated zero-bits via the Fibonacci recurrence

Raymond Chen
Raymond Chen

Today's Little Program enumerates bit sequences of a particular length subject to the constraint that you cannot have consecutive 0-bits. This may sound kind of arbitrary, but it is important in magnetic media storage, because you cannot go too long without a flux reversal (traditionally represented by a 1); otherwise, the read head's clock start...

Code
May 9, 2014
0
0

Even if you're the President, your mother still has the power to embarrass you

Raymond Chen
Raymond Chen

Last year, in honor of Mother's Day (the United States version), the John F. Kennedy Library shared a letter sent by President Kennedy to his mother. Mrs. Kennedy had contacted Premier Khrushchev asking for an autographed photo, copies of which were subsequently forwarded to the White House so that the President could sign them as well. President...

Non-Computer
May 9, 2014
0
0

When was the WM_COPYDATA message introduced, and was it ported downlevel?

Raymond Chen
Raymond Chen

Gabe wondered when the message was introduced. The message was introduced by Win32. It did not exist in 16-bit Windows. But it was there all along. The The message was carefully designed so that it worked in 16-bit Windows automatically. In other words, you retained your source code compatibility between 16-bit and 32-bit Windows without hav...

History