Showing tag results for History

Oct 26, 2006
Post comments count0
Post likes count0

For a brief shining moment, DirectX was more popular than another word that ends in x

Raymond Chen
Raymond Chen

In the month after DirectX 3 was released, "directx" became the number one most-searched-for term on microsoft.com. That in itself wasn't too surprising. What was more surprising was the word in sixth place: "sex". That puzzles me to this day. What kind of people search for "sex" on microsoft.com? And what were they expecting to find?

History
Oct 24, 2006
Post comments count0
Post likes count0

Invalidating the null window redux

Raymond Chen
Raymond Chen

The people who work on the next generation of the window manager, known as the Desktop Window Manager (DWM), told me that their original plan was to get rid of the compatibility hack that says that invalidating the null window invalidates the entire desktop, but by an amazing coincidence, two days after I posted that article, they received a repo...

History
Oct 5, 2006
Post comments count0
Post likes count0

Why does Windows hide keyboard accelerators and focus rectangles by default?

Raymond Chen
Raymond Chen

The release of Windows 2000 introduced a new setting: "Hide underlined letters for keyboard navigation until I press the Alt key," which defaults on for most Western languages. What's the story behind this setting? I still have the rationale from the user interface designer who introduced this feature. Here's a redacted copy: To support o...

History
Aug 11, 2006
Post comments count0
Post likes count1

Why does SetWindowsHookEx take an HINSTANCE parameter?

Raymond Chen
Raymond Chen

An anonymous commenter asked why the function takes an parameter if the first thing it's going to do is convert the instance handle into a file name. Because that's not how it worked in 16-bit Windows. In 16-bit Windows there was no such thing as hook injection. All 16-bit Windows applications ran in the same address space, so there was no nee...

History
Aug 10, 2006
Post comments count0
Post likes count0

One way people abused hooks in 16-bit Windows

Raymond Chen
Raymond Chen

We saw last time how windows hooks were implemented in 16-bit Windows. Even though the was an opaque data type that should have been treated like a handle, many programs "knew enough to be dangerous" and took advantage of the fact that the was just a pointer to the previous hook procedure. The most common way of abusing this knowledge was by ...

History
Aug 9, 2006
Post comments count0
Post likes count0

How were window hooks implemented in 16-bit Windows?

Raymond Chen
Raymond Chen

The mechanism for keeping track of window hooks was very different in 16-bit Windows. The functions involved were , and . The first two functions still exist today, but the third one has been replaced with a macro: Disclaimer: All code below is "reconstructed from memory". The spirit of the code is intact, but the precise details may be off. ...

History
Jul 14, 2006
Post comments count0
Post likes count1

How were DLL functions exported in 16-bit Windows?

Raymond Chen
Raymond Chen

The whole point of dynamic link libraries (DLLs) is that the linkage is dynamic. Whereas statically-linked libraries are built into the final product, a module that uses a dynamically-linked library merely says, "I would like function X from Y.DLL, please." This technique has advantages and disadvantages. One advantage is more efficient use of stor...

History
Jul 7, 2006
Post comments count0
Post likes count0

No, really, why is it 160×31?

Raymond Chen
Raymond Chen

When I discussed some time ago why minimized windows have an apparent size of 160x31, I explained that the minimized icon is a miniature title bar, but I managed not to explain why the values are exactly 160 and 31. The width of the miniature title bar is determined by the member of structure. You can retrieve and change this structure with the...

History