Windows Tweaks

Strange Windows tweaks & unusual work-arounds

On this page I'll be writing about strange tweaks I sometimes use to solve or "work around" a problem.

Needless to say, of course, that applying any of these tweaks is entirely at your own risk.
Make sure you have a tested full backup available before trying any of these unsupported tweaks.
And always experiment on "non-production computers" first.

 

 

Tweak 1: Security tab in XP Home

I have often wondered why on Earth did Microsoft decide to deliver Windows XP Home Edition with many unsafe security settings as defaults, and without the tools to improve security?

Well, that said, I didn't really bother until I found out that the laptop I wanted was available only with Windows XP Home Edition preinstalled.
"[vendor name] recommends using Windows XP Professional" and then that same vendor delivers XP Home only. Sounds familiar?

So for a while I used CACLS whenever I needed to change permissions for files or folders.
CACLS is a great tool for setting permissions unattendedly, but I wouldn't recommend for ad hoc use.

So this brings me to the tweaks I found to "restore" Windows Explorer's Security tab:

I. Boot to Safe Mode

The easiest way for ad hoc use is to boot the computer in Safe Mode whenever you need to set permissions.
When booted in Safe Mode, the Security tab is always available.
The disadvantage is, of course, that many services are disabled in Safe Mode. So you don't get the same functionality you have when booted normally until you reboot again.

II. Install Security Configuration Manager

A better solution is a tip by Gilles Pion on Doug Knox's site: install Microsoft's Security Configuration Manager Tool for Windows NT 4 & 2000 Server on your Windows XP Home Edition.
This work-around is not recommended by Microsoft, but it does seem to work on most systems (unless of course those who tried this and failed were no longer able to send their feedback Smiley).

This work-around may (or may not) downgrade some system files. This may affect the NTFS file system.
Though no problems have been reported so far, do make a full backup (or at the very least create a system restore point if your local data isn't that important) before trying unsupported work-arounds like this!

III. Patch RSHX32.DLL

The most elaborate method I found was one by Reinhard Tchorz, explained by Axel Vahldiek in the July/August 2005 issue of c't Magazine.
I think it is also the safest method, and it can always be undone quite easily.
Too bad it was only published on paper, in the magazine, and not on the magazine's website. I hope I'm not infringing any copyrights by summarizing:

  1. When booting in Safe Mode, a registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Option (which doesn't exist when booted normally) will contain a DWORD value OptionValue=1
  2. In Safe mode, the Security tab is displayed by %windir%\System32\rshx32.dll, after checking if the OptionValue=1 registry value exists
  3. It would be possible to trick rshx32.dll by patching the part that contains the search string OptionValue, replacing it with a slightly changed search string like OptionValuf, and adding this OptionValuf value to the registry under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Option
  4. However, it is uncertain wether or not other Windows processes may fail due to such a change in the DLL, and besides, the DLL is likely to be replaced with the next ServicePack or Security Update
  5. It is much safer to patch a renamed copy of the DLL
  6. This requires changing 2 registry keys pointing to this particular DLL
  7. The registry changes mentioned in list items [3] and [6] are the only changes that need to be undone to reverse the whole process

Did I mention you should make a backup before trying this?

A less intimidating alternative

At TackTech.com a simpler alternative is provided.
Willem Koster sent me this tip, accompanied by 2 .REG files that can be used to set and reset the required registry value.

  1. Set the registry value:

    REGEDIT4

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Option]
    "OptionValue"=dword:00000001
  2. Manage your file/folder security settings using Explorer's Security tab
  3. Reset the registry value:

    REGEDIT4

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Option]
    "OptionValue"=dword:00000000

Simple, and no reboots required.

Warning: Like all manipulations of the registry, there is always the risk of permanent damage to your configuration.
Use entirely at your own risk!
Make a backup before trying this, at least a SystemState backup, but preferably a full image backup.

 

Tweak 2: Large Harddisks in Windows 2000

When my wife's 120 GB harddisk crashed about 2 years ago, I replaced it with a 250 GB model.
Her Windows 2000 installation had problems recognizing the harddisk, so I settled for the 130 GB it did recognize and restored the image backups I had to the new disk.

Some time later, a collegue sent me a link to KnowledgeBase article Q305098, which explains how to make Windows 2000 (SP2 and earlier) aware of harddisk capacity over 137 GB.
So when I had to reinstall Windows 2000 again recently, I decided to give it a try.

First of all I made sure the BIOS was up to date and could handle these large capacity disks.
Then I added the registry value from the Knowledge Base article in the existing Windows 2000 installation, rebooted and checked the harddisk in Windows' Disk Management console. Sure enough, there was en extra 128 GB of unpartitioned disk space available.
I removed the extended partition with the logical drives and recreated the extended partition, this time using all available disk space. I created an extra logical drive to contain several installation files and, for the near future, the image backups of the system partition.

Did I mention you should make a backup before doing this?

The Windows 2000 installation CD was at SP2 level, so it still couldn't handle the large capacity during setup.
By keeping the primary system partition (C:) below the 137 GB boundary, this was no problem. After installing Windows 2000 I immediately added the registry value mentioned in the Q305098 KnowledgeBase article. After the reboot, Windows did recognize the extended partition and the first logical drive (that both started below the 137 GB boundary), but reported all disk space of logical drives beyond this 137 GB boundary as available empty space. For the time being I ignored this and installed SP4. I suspect it wouldn't have been wise to use any logical drive beyond the 137 GB boundary at that moment.
After the reboot, the lost logical drives reappeared as if by magic, including their data.

 

Tweak 3: Hotswap CompactFlash cards in Windows 7

I own a Canon EOS 50D camera, and take lots of pictures with the quality (resolution) set to maximum.
Copying the contents of my 32GB CompactFlash cards to my hardddisk may take a while, if I had a lucky day.
That is why I bought myself a Addonics SATA CF adapter plus Silicon Image hot-swappable SATA controller, which made copying much faster, since this CF card reader uses a SATA interface instead of USB 2.0.

That was back in the XP era.

After moving the hardware to my new Windows 7 computer, I discovered that the CF card reader was no longer hot-swappable.
After some experimenting I found that I could use the following command to allow hot-swapping again:

ECHO List Volume| DISKPART.EXE

It had to be run each time a card was inserted or ejected.
Well, at least it worked.

A couple of weeks later I read this article SATA: Hot Plugging Drives Under Windows 2000/XP, and found HotSwap!, which adds a nice GUI/tray icon.
Perfect! Works like a charm.

Thanks Kazuyuki Nakayama

Fixes and work-arounds for applications

 

 


page last uploaded: 17 October 2011, 20:50
Fileaze