The Old New Thing

Why isn't there a GetDlgItemFloat function?

Jonathan Wilson asks, "Do you know why there is a GetDlgItemInt and a SetDlgItemInt but not a GetDlgItemFloat and a SetDlgItemFloat?" Give people five dollars and they'll ask why you didn't give them ten. Let's start with the first question. Why is there a function? After all, doesn't do anything you couldn't already do with and . Well...

Why does scheduling a task require a password?

Kevin asks, "Windows XP lets me install applications, delete files, etc., so why does scheduling a task requires a password?" (I guess the answer to this question wasn't obvious since nobody answered it in the suggestion box.) Because scheduled tasks run after you have logged off. All those other operations occur while you are logged ...

Why can't I get FormatMessage to load my resource string?

A common mistake I see is people confusing message tables with string resources. This basically shows up in one place: . The folks who were designing Win32 decided that plain string resources weren't fancy enough, so they invented message tables, which is just another way of storing strings in resources. Why string resources weren't good ...

If you ask for STANDARD_RIGHTS_REQUIRED, you may as well ask for the moon

One of the predefined security access masks is . You see it used in defining the masks for various objects. Here are just a few examples: The mask is meant to be used when defining access masks for object types. I'm guessing it's called because it's the set of access masks that all securable objects must support. Look at the ...

There can be more than one (or zero): Converting a process to a window

A common question I see is "How do I find the window that corresponds to an ?" This question comes pre-loaded with the assumption that there is only one window that corresponds to an , which is true for only the most rudimentary of Win32 programs. Even a simple program like Notepad has more than one window with the same , as Spy quickly ...