Archive for the ‘Windows Bugs’ Category

Remove or hide personal information

September 26, 2013

The “Remove Properties and Personal Information” feature (on the details tab of the file properties UI) does not always remove information when you tell it to.

Start off by creating a small jpg image in paint and add some properties:
Add comment


To “open” or NULL, that is the verb

February 4, 2013

When you programmatically want to execute a shell item/path/URI you are forced to pick a verb even when you want to perform the default action (A.K.A. double click). This means passing NULL as the verb if you are calling ShellExecute[Ex]. When you do this the shell will do its magic to find the default verb:

Never means never, unless you are the taskbar

September 14, 2011

I like to keep my taskbar buttons grouped a certain way but explorer forces per application combined groups even when you tell it never to combine!

UAC, are you high?

February 7, 2011

MSDN has a Starting Low Integrity Processes sample that creates a process with a Low IL and this works fine if the parent is running at Medium IL, but if the parent is running at High IL, UAC elevation no longer works. (The sample code does not talk about High IL parent, only Medium IL parents)

Windows does not seem to take the Integrity Level into account when checking for admin rights:
UAC Low IL Admin
When requesting elevation, it does not seem to check if Current IL < High IL and just assumes that any token that has a non-deny administrators group SID is elevated and starts the process with the wrong IL when it really should show the consent UI and force the IL to be >= High IL on the new process. Once we are in this state (Non-deny admin. group SID and IL < 0x3000) there is no way for us to elevate a child process or to get a higher IL!

It would probably come as a surprise to most people that the simple reg.exe command fails when the console has the "Administrator: " prefix and most admin check methods (IsUserAnAdmin(), TokenElevationType=TokenElevationTypeFull and TokenElevation: TokenIsElevated!=0) indicate that you are elevated! IsUserAnAdmin is only documented to check group membership and is a pre Vista API, but the other two are elevated token/privileges specific so either my definition of elevated is wrong, or there are some major bugs with the IL handling.

UAC, RunAs silent fail?

January 26, 2011

When running as a standard user with UAC disabled, choosing “Run as administrator” from the context menu is broken!

Silent Bob

Not showing the consent UI is understandable since UAC is not “hooked” into the system, but just starting the process non-elevated without a warning dialog is just wrong. When the runas verb is used with ShellExecute and UAC is not enabled it should just show the old Run As dialog used in Windows 2000/XP/2003.

Can you say bad path?

August 14, 2010

There has been a lot of talk about the recent .LNK exploit so naturally I had to play with some shortcuts in a hex editor. Turns out that explorer seems to trust whatever content is in the ItemIdList!

A file in the details pane is worth two in the statusbar

September 10, 2009

So tell me Explorer, which one is it, 95 or 96?

Explorer file count

If only the details pane would display basic info like free space, there would be no reason to show both the statusbar and the details pane. Then the file count would not be confusing, just possibly wrong.

Peekaboo tooltip

September 6, 2009

See the problem?

XP Taskbar tooltip fail

This is a known issue, with a pathetic workaround suggested by MS; “Log off and then log back on to the current account”. For some unknown reason, tooltip’s seem to lose their WS_EX_TOPMOST style.

Why bugs like this stick around for the lifetime of a product I’ll never understand. Either add the style back in response to the TTN_GETDISPINFO message or fix the underlying problem!

And if anyone is wondering, the Visual Style is Luna Element 4 (Alt. Start button)

To be connected or not to be connected

September 4, 2009

…that is the question. Windows XP SP3 certainly has no clue!

XP + Wi-Fi = confusion

This problem seems to appear most often after waking up from standby. The tray icon also seems to think there is no connection. Killing and restarting explorer seems to cure the problem. At least the actual connection works even when “Not connected”.

Does this make me look flat?

September 4, 2009

Starting off gently with the first “real” post… As we all know, Windows XP added support for Visual Styles to change look of windows in ways not possible with just color and size changes. But the classic layout system also added a couple of new colors, including COLOR_MENUHILIGHT (Part of  the new “flat menus”). Applications that use normal menus get the new flat menu for free, it’s only when you need (basic) things like icons that the new menu look has to be taken into account. The windows shell is the first thing you interact with after log on, so you would think MS would get this right. WRONG! The windows shell team uses owner draw menus in several places and somehow got it wrong everywhere.

xp_mnucolor_1As we can see, the normal “Open With” menu item has a two color selection rectangle like the flat menu is supposed to have. What about the sub-menu? It looks like someone forgot about the new flat menu in their owner draw code.

This is not the only owner draw sub-menu seen in a regular file’s context menu, let’s take a look at the “Send To” sub-menu:


Hey, a two color selection rectangle, not bad. I guess they don’t use the same drawing code as the “Open With” menu. But wait, something is wrong… the text should be white, not black. In any theme that has a dark selection color, this is a bit of a problem. The “new” menu also has the same problem, fixing it is as simple as changing one COLOR_* constant with another, yet this problem still exists in Windows XP SP3.