Groovy Vista Shortcuts

Now that I’ve been using Windows Vista RC2 for some time now, I can definitely say that I’m impressed with the latest offering from Microsoft. The slowdowns are virtually non-existant on a 1GB system, and the window rendering is superb.

In the meantime, I thought I’d share some good Windows Shortcut Keys that are new to Vista:

WINDOWS + 1-9: Holding the windows key and pressing a number will launch an application in the Quick Launch bar on the Taskbar. This is very useful. I have the flip windows shortcut as WIN+1 and the Snipping Tool as WIN+2.

WIN+TAB: As most already know, this activates the Flip 3D view when you have a 3D graphics card onboard. Letting go of the WIN key will ‘flip’ the windows back to normal.

CTRL+WIN+TAB: A nuisance with RC1 was that just tapping CTRL+TAB would leave the flip view on screen. Instead, you now have to hold CTRL to keep the flip view on screen without holding the WIN key. Press the HOME key to scroll back to your original window, or press ESC to cancel.

WIN+T: Cycle through windows in the taskbar, shows live preview if available.

ALT+UP: In Explorer, ALT + UP will move to your parent folder. Very nifty when navigating around folders with the keyboard.

WIN+SPACE: Bring all Gadgets to the front

WIN+G: Move focus from one gadget to another on the desktop.

Phew!

There are loads more, but I think that these ones deserve special mention.

Just a note that both WIN+TAB and ALT+TAB allow mouse interactivity now. Flip 3D allows the wheel to be used as well as the back and forwards buttons used for web browsers.

ASpell, PHP and IIS

I’ve been trying to introduce spell checking into my PHP application and have been hitting a small snag. It’s called ASPELL.

For the uninitiated, aspell is a command-line spelling utility to, well, do clever spelling stuff.

In Apache, aspell works wonderfully. In fact, I wouldn’t have even thought that there was a problem. IIS on the other hand has different issues.

It’s easy to ask why I’m running my application on both servers, so I’ll quickly explain that one.

When I’m developing, I use Apache. For me this is an internal facing server which facilitates my needs of having simple-to-use easily editable configurations.

IIS faces the rest of the world because it hosts my email server (Exchange), so I don’t really have a choice about what I have on port 80.

Because of this, I always run demos on port 80 as a lot of sites I work in only have port 80 available, so IIS the the chap.

Anyway, the bottom line is that when aspell wants to run in IIS, you’ll end up with something like the following error on the client browser:

System error: Aspell progrem execution failed ('aspell -a --lang=en_US < C:WINDOWSTEMPasp1FB.tmp 2>&1')
Catchy, eh?

The problem is that the Windows security model is not allowing PHP to use the shell_exec() interface. And quite rightly, too.

To work around this, you must set permissions for cmd.exe in %windir%\system32 to allow your website visitors to run these external applications.

NOTE Allowing this means that website visitors can theoretically upload scripts that can execute commands on your system. Be very very careful that you are the only person able to upload scripts. Take all other web-security precautions.

A good idea would be to create a dummy user account solely for the website you have created, and give that user minimal permissions on the server.

Finally, don’t blame me if your system gets hacked!