Flutterby™! : Modern Microsoft Mayhem

Next unread comment / Catchup all unread comments User Account Info | Logout | XML/Pilot/etc versions | Long version (with comments) | Weblog archives | Site Map | | Browse Topics

Modern Microsoft Mayhem

2009-12-08 22:01:22.766772+00 by Dan Lyke 2 comments

NirSoft: Very weird problem on Windows Vista and Windows 7. Apparently having "Launch" in the name of your executable can crash modern versions of Windows.

The systems that I used to test this problem don't have any installation of Antivirus, Firewall, or any other software that might affect the operating system behavior. So I guess that there is some code inside Windows kernel which says, "If the .exe contains the word 'launch', execute it in a different way than all other executable files."

Cool! (In that "holy crap I develop software for this abomination of a platform and this is the type of idiocy that I have to be aware of in case it bites me" sort of way) Hat tip to Shawn.

[ related topics: Microsoft Software Engineering moron ]

comments in descending chronological order (reverse):

#Comment Re: made: 2009-12-09 00:27:07.58832+00 by: Dan Lyke

Huh. I've had to disable UAC because it was mucking with my corrupt registry in a way that was keeping me from being able to install anything.

But overall this screams of someone Pointy-Haired saying "it shouldn't be able to do this", and some programmer saying "well, I can fix that symptom..."

#Comment Re: made: 2009-12-08 23:33:04.071231+00 by: Shawn [edit history]

This is also partly how User Account Control (UAC) works: Along with checking various flags in the application itself, any executable with a filename that contains "setup" or "install" will invoke the "Windows needs permission to continue" dialog. This was true for Vista[Wiki] at least - I know that Windows 7[Wiki] toned down the UAC triggers, but I'm not sure if they cut that one.

So the specific "Launch" problem discovered at NirSoft (who makes great utilities, btw) was new to me, but not that surprising. Doesn't make it any less stupid, of course ;-)