Showing tag results for Code

Oct 25, 2012
Post comments count0
Post likes count1

Keyboard layouts aren't like Beetlejuice – they won't appear just because you say their name

Raymond Chen

A customer reported a bug in Windows Vista Home Editions: We are handling a Ctrl+V keyboard event and want to interpret it in the context of a US-English keyboard. On Windows XP and versions of Windows Vista other than Home editions, the three calls all succeed, whereas on Windows Vista Home Editions, the calls fail. On the other hand, ...

Code
Oct 24, 2012
Post comments count0
Post likes count1

You can't use the WM_USER message in a dialog box

Raymond Chen

Today, I'm not actually going to say anything new. I'm just going to collate information I've already written under a better title to improve search engine optimization. A customer reported that they did the following but found that it didn't work: "I send the message to my dialog, but the value doesn't stick. At random times, the value rese...

Code
Oct 23, 2012
Post comments count0
Post likes count1

Diversion: Generating a random color from JavaScript

Raymond Chen

A colleague posed a little puzzle for a fun little app he was writing in HTML: He wanted to generate a random color. If you search around the intertubes, you can find several possible attempts at a solution, like this collection, and an interesting example that has trouble with the pigeonhole principle. The original function to generate a ra...

Code
Oct 19, 2012
Post comments count0
Post likes count1

Using WM_COPYDATA to marshal message parameters since the window manager otherwise doesn’t know how

Raymond Chen

Miral asks for the recommended way of passing messages across processes if they require custom marshaling. There is no one recommended way of doing the custom marshaling, although some are hackier than others. Probably the most architecturally beautiful way of doing it is to use a mechanism that does perform automatic marshaling, like COM and MI...

Code
Oct 11, 2012
Post comments count0
Post likes count1

Combo boxes have supported incremental searching for quite some time now

Raymond Chen

Back in August 2007, I promised to post a program the following day but it appears that I never did. Oops. I discovered this as I went through my "things to blog about" pile and figured better late than never. Though five years late is pretty bad. Here's a program which fills a combo box with some strings. Run this program and start typing: "...

Code
Oct 5, 2012
Post comments count0
Post likes count1

How do I override the default icon selection algorithm?

Raymond Chen

The usual way of loading an icon from a resource is to use the or function and letting the window manager's icon selection algorithm decide which image to use based on the images available in the icon, the desired icon size, and the current color depth. A customer wanted to override that algorithm, because the window manager uses the current dis...

Code
Oct 4, 2012
Post comments count0
Post likes count1

Why does RegOpenKey sometimes (but not always) fail if I use two backslashes instead of one?

Raymond Chen

A customer reported that on Windows XP, they observed that their program would very rarely get the error when they passed two backslashes instead of one to the function: After removing C++ escapes, the resulting string passed to is The failure was very sporadic and not reproducible under controlled conditions. Well, first of all, d...

Code
Oct 3, 2012
Post comments count0
Post likes count1

How do I suppress the default animation that occurs when I hide or show a window?

Raymond Chen

A customer wanted to know how they can disable the default fade-in/fade-out animation that occurs when a window is hidden or shown. "I don't want to use because that causes my window to disappear from the taskbar. I tried but that affects the entire desktop and is too jarring. We want to suppress the effect because our program replaces one windo...

Code
Sep 27, 2012
Post comments count0
Post likes count1

Why aren't environment variables being expanded in my RGS file?

Raymond Chen

A customer was having trouble with their RGS file. I want to include the below line in a .rgs file: When I do this, registering of the dll fails with 80002009. Any help? If I change it to then the registration succeeds (but of course now contains a hard-coded path). A common problem people have when asking a question is assuming that th...

Code