Mar 12

Registry editing is far from convenient. It’s very easy to forget which key you need to edit or the values that you’d like to change. It can be difficult for less experienced users to carry out, too, making explaining tweaks to friends a bit of a nightmare.

You can get to the heart of Windows quickly and easily with this tool.

There is a solution to all this, though, and it’s called RegDevelop. This interesting utility makes it easy to produce a custom Registry tweaking tool that features all your favourite options – and no programming experience is required. Once it’s set up, you’ll be able to apply the tweak you’re after in a couple of clicks. And if you want to share the tweak with a PC novice friend, then just send them a copy and they won’t need to delve into the depths of the Registry to optimise their system.

Unstable utility

Before you get started with RegDevelop, we need to make it clear that it’s not entirely stable. Despite its ‘1.0’ version number, this is very much an alpha release, and it’s prone to displaying error messages if you do anything even slightly unexpected. Once or twice we’ve found that our RegDevelop project has become corrupted, so we’ve had to recreate it from scratch. With this in mind, it’s a good idea to make backups. We still think the program’s worth your time, though: there’s nothing quite like it, and if you’re careful then you may not notice any bugs at all. Those that do exist stand no real chance of harming your PC. If you’re looking for perfection, then, and will get annoyed if a project you’ve been developing stops working, RegDevelop probably isn’t for you. But if you like the idea of building your own interface for Registry tweaks, and are willing to put up with some early instabilities to make that happen, it really is worth a look.

After installation, checking the terms and conditions and optionally (and probably sensibly) agreeing to create a restore point, you’ll see a very simple design interface. The ‘form’ is the white space where you can add your Registry tweaking options through five different controls: Checkbox sets numeric values, Textbox handles strings, Label provides captions, Picturebox holds images and Button runs applications (more on that later).

Checkboxes are great tools for setting binary and numeric registry values

Let’s think of some uses for the program. Suppose, for instance, that you’re tired of leaving your PC on overnight to download a huge file only to wake up in the morning and find that it’s been rebooted by Windows Update and you need to start the process again. There’s an easy Registry tweak for this, but you don’t want to leave it applied all the time, because normally you want Windows Update to install security patches as soon as they arrive. The solution to this problem? Use RegDevelop to provide a simple interface for this Registry tweak so that you can turn it on or off quickly and easily as often as required.

Create a tweaking tool

Click the Checkbox control on the left-hand menu, and a checkbox with a default caption will appear on the form. Move the mouse cursor over it, hold down the left mouse button and you’ll be able to drag it wherever you like.

Click the checkbox on the form, then look over to the right-hand side. The Settings box here lists the various properties of the checkbox; these must be changed to get the program to work as we’d like. The ‘Caption’, for instance, is the text that will be displayed to the right of the checkbox. Type Don’t allow Windows Update to automatically reboot the PC in the Caption box and press [Tab] to see the checkbox update.

The value ‘RegKeyPath1’ represents the Registry key that the checkbox will be altering, so enter HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU here. ‘ValueName1’ represents the Registry value we’ll be tweaking, so type NoAutoRebootWithLoggedOnUsers into the box.‘ValueData1’ represents the value of this Registry setting when the box is checked. Set this to 1. We could now enter more information in the Unchecked section to tell the program to set ‘NoAutoRebootWithLoggedOnUsers’ to 0 when the box isn’t checked, but that’s unnecessary in this case because by default the program will delete the value when the box is unchecked, which has the same effect. And so we’re finished – your first tweaking tool is complete!

Testing time

To make sure that this tweak works, first launch Regedit and then browse to HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU. Next, go back to RegDevelop and click the ‘Start’ button to run the program for real. Clear the checkbox, click ‘Apply’ and then switch to Regedit and press [F5]: the ‘NoAutoRebootWithLoggedOnUsers’ setting will disappear. Check the ‘RegDevelop’ checkbox, click ‘Apply’ and press [F5] in Regedit and you’ll see that it comes back. Your RegDevelop program is altering the Registry just as you’ve asked, but without you having to remember (or even know) any of the precise details of how it works.

Your content is stored as XML, which you can edit manually if you want to avoid program crashes. But be careful.

We’ve only applied a single tweak so far, but you can use the same principle to add any other numeric Registry tweak that you like – and not just binary 1 or 0 settings, either. Take the MenuShowDelay tweak, for instance. If you hover the mouse cursor over a Start menu entry such as Recent Items, it will expand. The ‘MenuShowDelay’ key sets the delay in milliseconds before this happens. By default it’s set to 400, but you might find reducing it to, say, 100 milliseconds makes you more productive.

To give this a try, add a new checkbox to your form. Position this neatly under the first, and give it the caption Expand menus more quickly. Click the checkbox, then enter HKEY_CURRENT_USER\Control Panel\Desktop into the ‘RegKeyPath1’ box. Next, enter MenuShowDelay in the ‘Value_Name1’ box, 100 as ‘ValueData1’ (the value to be used when the box is checked) and set ‘ValueType1’ to ‘dword’.Move to the Unchecked section and set ‘DeleteWithUnchecked’ to False. The Registry key, value and value types you’ve just chosen will now appear here too. Set ‘ValueData2’ to 400 (the default setting) and this will be used when the box is cleared.

Shall we find out whether this has worked? Click ‘Start’, and again watch with Regedit to confirm that the program is changing the settings you’ve specified whenever you check or clear the box and click ‘Apply’. If it’s not working, check the settings; if it’s OK, let’s share your work.

Pass it around

Click in an empty part of the RegDevelop form – away from your checkboxes so that they’re no longer highlighted – and you should see the ‘Program Settings’ box appear on the right. Click in the ‘Author’ box and enter your name. You can also enter a name for your program, and even customise it with an icon if you have one to hand.When you’re happy, click the ‘Build Now’ button and confirm your decision. While the program makes it sound like it’s going through a complicated process, it’s really just saving your settings and marking the tool as ‘Finished’. Close and restart RegDevelop to see the effect – the tool now opens with your finished form displayed, and the designer window is no longer visible.

If you’d like to share your newly created tool with someone, send them a copy of everything in your RegDevelop folder. This will include the ‘RegDevelop.exe’ file, the ‘Controls.xml’ file (which holds all of your custom settings) and the Tools folder. Or, if you want to carry it around with you so that you can use it on other machines, copy the same files to a USB flash drive. It’ll then run on any PC that has the .NET framework installed.

One unusual RegDevelop feature is that your tweaking tools can be further extended by the user. Unfortunately this does mean that a less-experienced computer user with a copy could press [F12], find themselves back in the design environment, play around and eventually break some important Registry setting. If your less computer-literate friends are especially good at trashing PCs then it might be something to bear in mind; why not add a note to the form suggesting that novices keep their fingers clear?

Going further

So far we’ve concentrated solely on checkboxes and numeric values, and that’s not by accident. You should be able to use textbox controls to edit strings or enter numbers directly, but these don’t always seem to work as you’d expect. When we tried to add a textbox after our two checkboxes, for instance, our project crashed. And while we’ve managed to get textboxes working occasionally, they don’t always seem to use the correct data type, and changing a setting will often result in an error message. By all means experiment with textboxes yourself, but be ready for problems. If you prefer a simpler life then it might be better to stick to checkboxes, at least until the program is developed further and becomes more stable.

Buttons can be used to launch commonly used programs, Windows components, or command line tools.

A better option if you’re interested in seeing exactly what RegDevelop can do might be to download a prebuilt sample application from the author’s own site. WinBubbles Lite 2009 (www.bit.ly/5os7KC), for instance, uses all the RegDevelop controls to provide tweaks for Explorer context menus, various Windows policies (you can disable Regedit and Task Manager, for instance) and the ability to change the Windows 7 log-in screen if you had the urge to do so.

WinBubbles Lite 2009 is a genuinely useful little program in its own right, and it contains a few interesting ideas that we hadn’t seen before. But for us, the real benefit of the application is as an example of how to use RegDevelop. Controls are placed inside picture boxes to separate them into logical groups, for instance; buttons are used to launch Windows components; and there are textboxes that actually work. Once you’ve finished exploring what the program has to offer, press [F12] to switch to the designer, and click any controls that look particularly interesting in order to discover the settings that make them work. Then you can steal the ideas for your own project, or simply use WinBubbles Lite 2009 as a basis for your own tool, removing any options that you don’t use and replacing them with your own favourite tweaks. Don’t worry, the author won’t mind – as long as you comply with the conditions in the included ‘RegDeveloplicenseAgreement.txt’ file then you’re free to rework any of his examples just as you like – and you can even sell them commercially if your ideas are good enough.

Change your wallpaper

Most of the best Registry tweaks relate to numeric values and the bulk of the rest use strings, but occasionally you’ll want to handle something more, like an image. If you’re looking to create a tool that will set your desktop wallpaper, for instance, then using a textbox and forcing the user to type in a full path and filename is a very bad idea. It’s much better to let them browse for an image, then display the final results, and you can do exactly that using a Picturebox. Start a new RegDevelop project, click the Picturebox control and resize it to fill the form designer. With the Picturebox control still highlighted, enter HKEY_CURRENT_USER\Control Panel\Desktop in the ‘RegPath’ box and Wallpaper next to ‘ValueName’. This tells RegDevelop to read your current wallpaper image, which will be displayed in the Picturebox.

The Picturebox control makes it easy to change your wallpaper and other images whose locations are stored in the Windows Registry.

Set the ‘PictureBoxStyle’ value to’ View and Set’. Next, click ‘Start’ and the current wallpaper image will be displayed. Click on this to launch an Open dialog box, then browse to and select the image you’d like instead. Click ‘Open’ and it’ll replace your current wallpaper, though you won’t see this until the desktop is refreshed.

This isn’t the most intuitive of solutions – clicking on a picture isn’t the normal way to change it – but it’s simple enough to use once you’re used to it. Any time you need an image URL in a Registry key, this is the way to go.

Protect your RegDevelop project

As we’ve mentioned elsewhere, RegDevelop isn’t entirely stable right now. Simply clicking in the wrong place at the wrong time could be enough to corrupt your project and prevent it from displaying correctly. It’s a bad idea to rely solely on RegDevelop’s single copy of your project, then, and we’d recommend you make additional backups on a regular basis. Close the program, saving any changes you’ve made, then browse to the folder where ‘RegDevelop.exe’ is saved. The ‘Controls.xml’ file there contains all your project settings, and you should create a backup copy somewhere else.

If it’s too late for that – the file is corrupted and you don’t have a backup – then you may be able to rescue your project by editing the Controls.xml file manually. Open it in Notepad and look for obvious problems. Or, if it’s just started crashing when you edit a specific control, you could try deleting that entire control from the file. That might just be enough to get the project working again.

Launch Programs

RegDevelop isn’t just about Registry tweaks. You can also use it to launch programs or Windows components that take a few clicks to locate. The Display Settings dialog is an extra click away in Windows Vista, for instance, but add the necessary command to a RegDevelop button and it’ll always be close to hand. Launch RegDevelop and click the Button control on the left-hand menu. Then click on your new button and give it the caption Display Settings.

Click the button on the form again, then click the ‘StartProcess’ box. This is the command that the button will launch when it’s clicked. Type RUNDLL32.EXE shell32.dll,Control_RunDLL desk.cpl,,3 and press [Enter]. The ‘WindowStyle’ box allows you to choose whether the command will be launched from a hidden or a visible window. In this case it doesn’t make any difference, so you can leave it at the default ‘normal’ setting.

And that’s it! Click ‘Start’ and the Display Settings dialog should appear. You can now add other buttons to launch any other Windows components that you might find useful. Entering RUNDLL32.EXE shell32.dll,Control_RunDLL inetcpl.cpl,,0 in the ‘StartProcess’ box will launch your Internet Options dialog, for instance. Use ncpa.cpl to open the Network Connections folder, or just Control to launch Control Panel. Check the scripting site www.dx21.com/coding/libraries/rundll32 if you need more ideas for commands.

Jul 26

Out of curiosity, I had a quick try to see if VMWare can run on EC2. Before terminating the Win2003 (32 bit) server I had running on EC2, I installed VMWare client on it and launched image with it: got a nice error message telling that VMWare is not compatible with Xen hypervisor used by Amazon EC2.

Had a 2nd try with the open source VirtualBox (from Sun). When I launched a virtual machine in VirtualBox (install CentOS from ISO image), the whole EC2 image came to a halt. No problem, I was done with it anyway.

Lesson learned: running virtualization solution on EC2 doesn’t seem to work

Note: it should be possbile to convert VMDK to AMI using QEMU

Sep 04

Writen by John Sollars

In the early days there was a vast difference between an inkjet printer and its laser version but with time the difference has narrowed down to point where it is sometimes difficult to differentiate between the two. Most individuals continue to use the Inkjet printers, as they are less expensive and nearly all of them are colour capable. The quality of the inkjet printers has improved over time and now there is not a huge difference in printing quality with the Laser printers. It’s for this reason that small or home business can use an inkjet printer without having to worry about documents looking unclear or looking cheap.

The laser printer is capable of printing much faster and usually produces better quality image, it is far more expensive as compared to the Inkjet version. Laser printers are usually used for black printing but there are colour laser printers available now.

Having pointed that out, it is also useful to note that the general rule of the thumb for printers is ‘the lesser the cost of the printer, the more expensive the running cost”. This could however depend on the volume of printing the printer is being used for. If the printing volume were minimal, it would be more cost effective to use an inkjet printer. It is very easy to get carried away by the initial price of an inkjet printer but people buying them are often not aware that the running cost of the machine would play a huge part and should be factored into the decision making.

This would be better understood with an example. Let us consider a Canon i320 colour bubble jet printer. It usually does not cost more than £30 obviously subject to the discounts applicable at your store. The cost of a cartridge is usually in the £10 range and on an average it prints 170 pages. Even if you print as few as 7 pages a day that works out to 2100 pages over the year. This in turn works out to an annual expense of approximately £135. The amount one spends on cartridges is approximately 4 times the price of the printer in the first year itself. This is the reason the subsequent expenditure needs to be taken into consideration while buying a printer.

Inkjet printers come with some added problems that need to be looked at and taken into consideration.

1.	To begin with they are not as fast as the Laser printers. This is one reason why Inkjet printers are not recommended when printing needs to be done in large volumes.  2.	They are known to throw up cartridge error messages even though the cartridges might be working just fine. This is not to say that Inkjet printers are always problematic but these are just a few errors that do crop up once in a while.  3.	The print can also start going haywire sometimes and it may start printing in endless loops.  4.	It is often difficult to minimize and regulate the amount of ink being used in the Inkjet printers.  5.	There is a difference in quality of an Inkjet print and a laser print. Often the laser print is of better quality.

It is for these reasons that the laser printers sales have taken of in a very big way in spite of being a more expensive buy.

However, in comparison to the laser printers, there are a few positives about the inkjet printers, which are more suitable to the requirements of a small or home business where they do not need to print as many in terms of volumes.

Colour laser printers have been around for some time but they were frightfully expensive a few years ago. A recent study found that last year nearly 1.85 million colour laser printers were sold, a substantial growth from the previous year. A large number of offices are going in for the colour page printers. This is however not recommended if you do not need to print fliers or brochures in large volumes consistently.

There are a few other advantages that come with a laser printer, for example:

1.	Using a duplex unit: This would enable the user to print back to back. This is particularly useful for creating brochures and leaflets.  2.	Add a paper drawer: This would reduce the number of user interventions and in turn reduces the printer errors  3.	Assigning different paper trays for different drafts can be used to print different documents without messing about with the tray each time.  4.	An Ethernet or a wireless network card can be added to the printer to attach it to a network. This functionality can be availed in the laser printer.

This is just to outline the benefits of using each kind of a printer. This is aimed at helping the user to weigh the pros and the cons before buying a printer.

John Sollars is the managing director of Solar Electronics, which are both ink and pc peripheral suppliers based in Shropshire, UK. To access a comprehensive online shop of original and re-manufactured printer inks please visit http://www.stinkyinkshop.co.uk