Showing tag results for History

Jul 1, 2004
Post comments count0
Post likes count0

Why can’t I use the same tree item multiple times?

Raymond Chen
Raymond Chen

It's the continuing balance between ease-of-use and generality. At a literal level, you can't use the same tree items in multiple places in the tree, because then various properties would become ambiguous, properties like TVGN_PARENT or TVIS_EXPANDED. (If a tree could be in two places, then it would have two parents, for example.) Of course...

History
Jun 30, 2004
Post comments count0
Post likes count0

Why does the Links folder keep re-creating itself?

Raymond Chen
Raymond Chen

Those of you who dislike the Links folder have probably tried to delete it, only to discover that it keeps coming back. Why is that? This is Internet Explorer trying to do some auto-repair. It noticed that the Links folder is missing, so it figures, "Gosh, it must be corrupted! I'd better fix the problem by creating a replacement." People...

History
Jun 24, 2004
Post comments count0
Post likes count0

The evolution of dialog templates – Summary

Raymond Chen
Raymond Chen

As promised, here's the tabular version of the evolution of dialog templates. It doesn't contain any new information, but it may give you a little glimpse into how things evolved to see the small changes highlighted against each other.

History
Jun 23, 2004
Post comments count0
Post likes count0

The evolution of dialog templates – 32-bit Extended Templates

Raymond Chen
Raymond Chen

At last we reach our goal, the 32-bit extended dialog template, known in resource files as DIALOGEX. I will celebrate this with a gratuitous commutative diagram: Isn't that special. Okay, so let's get going. The 32-bit extended dialog template is the 32-bit version of the 16-bit extended dialog template, so you won't see any real surprises i...

History
Jun 22, 2004
Post comments count0
Post likes count0

The evolution of dialog templates – 16-bit Extended Templates

Raymond Chen
Raymond Chen

The next step in the evolution of dialog templates is the Extended Dialog or DIALOGEX. First, let's look at the 16-bit version. The 16-bit extended dialog template is purely historical. The only operating systems to support it were the Windows 95/98/Me series. It is interesting only as a missing link in the evolution towards the 32-bit extended ...

History
Jun 21, 2004
Post comments count0
Post likes count0

The evolution of dialog templates – 32-bit Classic Templates

Raymond Chen
Raymond Chen

Okay, last time we talked about the 16-bit classic DIALOG template. This time, we're going to talk about the 32-bit classic DIALOG template. There really isn't much going on. Some 8-bit fields got expanded to 16-bit fields, some 16-bit fields got expanded to 32-bit fields, extended styles were added, and all strings got changed from ANSI to Uni...

History
Jun 18, 2004
Post comments count0
Post likes count0

The evolution of dialog templates – 16-bit Classic Templates

Raymond Chen
Raymond Chen

In the history of Windows, there have been four versions of dialog templates. And despite the changes, you'll see that they're basically all the same. First, there was the classic Windows 1.0 dialog template. It starts like this: Notice that this is where the 255-controls-per-dialog limit comes from on 16-bit Windows, since the field that re...

History
Jun 17, 2004
Post comments count0
Post likes count0

The evolution of dialog templates – Introduction

Raymond Chen
Raymond Chen

In the history of Windows, there have been four versions of dialog templates. And despite the changes, you'll see that they're basically all the same. My secret goal in this six-part series is to address questions people have had along the lines of "I'm trying to generate a dialog template in code, and it's not working. What am I doing wro...

History
Jun 15, 2004
Post comments count0
Post likes count1

What was the purpose of the hPrevInstance parameter to WinMain?

Raymond Chen
Raymond Chen

Once your average GUI program picks itself up off the ground, control begins at your WinMain function. The second parameter, hPrevInstance, is always zero in Win32 programs. Certainly it had a meaning at some point? Of course it did. In 16-bit Windows there was a function called GetInstanceData. This function took an HINSTANCE, a pointe...

History
Jun 14, 2004
Post comments count0
Post likes count2

What is the difference between HINSTANCE and HMODULE?

Raymond Chen
Raymond Chen

They mean the same thing today, but at one time they were quite different. It all comes from 16-bit Windows. In those days, a "module" represented a file on disk that had been loaded into memory, and the module "handle" was a handle to a data structure that described the parts of the file, where they come from, and where they had been loaded into...

History