Does not compute

January 27, 2015

And so it begins, the inevitable replacement of the classic Windows applets with slow Modern apps that lack features and are horrible in every way possible.

One of the most important features of Calculator, Notepad and friends is a fast start-up time and I cannot believe that someone finds it acceptable that a calculator needs a splash screen in 2015.

I really like the Windows 7 calculator and the bit-toggling panel in programmer mode is its best feature and of course it has been removed. But why stop there, no programmer is ever going to need to XOR anything so lets just remove that along with bit shifting and rotation!
Read the rest of this entry »

A home for old explorers

September 30, 2014

I was inspired by some of the leaked Windows vNext screenshots and decided to try to replicate the new Explorer Home special folder.

Explorer Home clone

Read the rest of this entry »

A property lost in tIME

March 25, 2014

The built-in PNG property handler does not support the tIME chunk for some reason. Why? I don’t know and it is only 7 bytes of data that is easy to parse!

We can fix this with a little shell extension. Sadly PSCreateMultiplexPropertyStore is documented to be read-only and I did not check if the system supplied version of IPropertyStore supports aggregation. We could hook the interface methods or do other tricks but just creating a simple wrapper seems to be enough to get a read-only version to work.

Read the rest of this entry »

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
Read the rest of this entry »

The final (menu) solution

July 10, 2013

Start Menu SizeGrip

How hard can it be to allow the user to decide the size of their start menu/screen?

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:
Read the rest of this entry »

I see your errorlevel and raise you a process exit code

December 7, 2012

Have you ever written a batch file that is more of a “application” than a script? Of course you made sure ERRORLEVEL is set correctly so when your batch file is a part of a larger script, IF ERRORLEVEL error checking can be used. What could go wrong?

For some crazy reason, cmd.exe does not use the expected logic when you use the && and/or || syntax. I assume part of the problem is because the batch file is executed by cmd.exe itself and there is no child process and no real process exit code.

Fixing this requires some hacky workarounds and is generally a big pain in the ass.
Read the rest of this entry »

WinDbg: A darker shade of border?

July 31, 2012

Why does WinDbg look like crap?

Read the rest of this entry »

Certification requirements for Metro style apps

February 15, 2012

As I feared, Microsoft are heading down the locked-down Apple style path with Metro/WinRT.

Let’s take a look at the (preliminary) certification requirements for the Windows Store: Read the rest of this entry »

Windows 8 (//build/ 2011) platform lies

September 16, 2011

I’m sure you have seen this slide:

The truth is probably closer to this:


Get every new post delivered to your Inbox.