Windows XP Tips

Caution: The information here isn't always thoroughly researched; it's intended as just a casual reminder to myself, so please take care and confirm for yourself that it is accurate enough for your purposes. Note that this web page is based on Windows XP Pro, and may not apply to Windows XP Home.


Beware when moving read-only files from one directory to another if the directories contain files of the same name. If you move one at a time, you'll get the warning "Are you sure you want to move the read-only file ...". If you click yes, you will still get the "Confirm File Replace" dialog box, which allows you to compare the properties of the file you are moving with the file of the same name in the destination directory. All well and good. However, if you move several read-only files, the dialog box will have another button marked "Yes to All". If you click "Yes", the you'll get the "Confirm File Replace" dialog, but if you click "Yes to All", you won't see the confirmation dialog and the files will be moved even if they overwrite a newer file. Poor design. Be careful.


Windows XP can be reinstalled on top of itself, without disturbing settings and documents. During the installation process, at the first installation–type prompt, select Install XP (not Repair), then at the following installation–type prompt, select Repair. (The repair process selected at the first prompt merely takes you to a command prompt only text mode).

It is possible to turn off the autoplay feature for each disk, using My Computer, Manage, Local Policies. Another method is thus:

  1. Click Start, then Run...
  2. Go to “Computer configuration”
  3. Go to “Administrative templates”
  4. Go to “System”
  5. Select “Turn Autoplay off”

Windows XP's built–in CD burning utility allows you to drag files onto the CD drive in Windows Explorer as if it were another ordinary drive. This drag–and–drop to CD functionality is similar to the feature called “Packet–Writing” supported in third-party burning software. However, there is an important difference in that the files are not burnt straightaway, but are cached in a buffer folder until you tell Windows to write them to the CD.

The problem with packet–writing is that CDs burnt this way use a different format that is not very common, so you are more likely to come across computers that can't read such CDs (indeed, depending on the versions of the operating systems and CD software on the writing and reading computers, you may have to install the packet–writing software to read such a CD. CDs burnt with Windows' built–in writer don't suffer this problem since they are burnt in a more common format.

Unfortunately, the disadvantage on Windows' burning feature is that it changes the modification time of all files written to the CD to the time the CD was burnt. Note that it changes the time only of the copies on the CD; the original files are not affected. The modification date is very useful information (especially for backup and version–control software) so having it modified inappropriately like this is liable to cause lots of problems. Be warned. (I have never seen any third–party CD burning software do this.)

Follow the link for more information about burning CDs in Windows XP

Running tasks with the Scheduled Tasks utility is not exactly straightforward. Passing arguments to Visual Basic scripts (.VBS) is difficult. Creating a shortcut (.LNK file) with the arguments appended to the command that calls the script won't work since the call to the shortcut is immediately replaced with a direct call to the script itself. Adding arguments to the scheduled task's command line won't help either, since the script will run but never recieve the arguments.

You can solve this problem by placing “cscript” at the start of the command that calls the script. This will ensure the script receives the arguments specified in the call. For example:

cscript "%USERPROFILE%/batch/backupmydocs.vbs" D:\backups\


Windows creates two built–in user accounts; “Administrator”, and “Guest” (which is disabled by default).

For some reason, the 'friendly' user accounts interface (called “The Welcome Screen”) allows you to change an account to one of only two types: either Administrator or Limited. The advanced groups and accounts management interface offers finer control with groups such as Users, Power Users, Administrators, etc.

For another obscure reason, the friendly accounts interface insists that you must have at least one administrator account, so that you can't change your normal (i.e. non-Administrator) account to a limited account. The strange thing is that it insists on this even though there already exists the built–in Administrator account. Thus, you end up needing two administrator accounts; the one created automatically during setup, and one of the additional accounts you created during setup. If you prefer to do your everyday computing in a limited account, you'll have to create a third account for this purpose.

It is safer to use a non–administrator account for everyday work; indeed, this policy is strongly encouraged on Linux systems by the system itself. Unfortunately, many programs (including XP-compliant software) won't work properly unless you have administrator privileges, even when there is no sensible reason why a non–administrator should be prevented from using the software.

In a bizarre reverse advance, the Local Users and Groups manager no longer allows you to select the groups and users from a list (such as when adding a user to a group). You have to type the name in, which means you have to remember its precise name. Goodness knows why this change was made.

The Administrator account is not shown by default on the Welcome menu. You can have it displayed here with some simple registry editting (be careful, you can seriously damage your setup if you damage the registry. Backup the registry, then edit it with care). To control whether an account is visible on the Welcome screen, do the following:

  1. Run regedit
  2. Go the key HKEY_LOCAL_MACHINE (also known as HKLM) - SOFTWARE - Microsoft - Windows NT - CurrentVersion - Winlogon - SpecialAccounts - UserList
  3. Click Edit
  4. Click New - DWORD Value
  5. For the name, enter the name of the account to show/hide
  6. For the value, enter a one to show the account, or a zero to hide the account.

Many programs won't work for a limited account on XP because they lack the necessary permissions to access or change certain files. There are a variety of ways of dealing with this problem. If you don't care about security, then you could make the account a member of the Administrators (or perhaps Power Users) group. You could install the program (or perhaps just the offending files) to the Shared Documents folder. Additionally, you could adjust the security settings to give the account the necessary access to the relevant files. The CACLS.EXE program can be used to do this, but you'll need to run it from an account that already has the permissions necessary for changing permissions. For example, to allow all users to add and edit script files for the Vim editor, the following command could be used:

CACLS "C:\Program Files\Vim\Vimfiles" /T /E /G Users:W

(Actually, the case of letters doesn't matter in the filenames or options). The /T option applies the changes to subfolders of the vimfiles/ folder. /E means that the specified permission should be added to the existing permissions (instead of replacing them). /G means to grant the specified permission to the specified users (or groups). Type help cacls for more information. Try to limit the affected users, permissions, and files to the minimum necessary in the interests of security.

System–wide environment variables cannot contain the system variables %USERPROFILE% and %USERNAME% since they are not resolved (their values are literally the same as their names) when the system variables are initialised. If you want an environment variable to contain the logged–in user's details, the variable must be set in the user-specific settings (My Computer - Properties - Advanced - Environment Variables).

Non XP-compliant software (e.g. Windows software released before XP was released) may not understand XP's account system. Consequently, when you install such software, its Start Menu and Desktop shortcuts are visible only to the account you were logged into when you installed the software. To make the shortcuts visible to every account, move them to the Desktop\ or Start Menu\ subfolders of the C:\Documents and Settings\All Users\ folder.


Be careful with terminology: during setup, Windows creates an account called “Administrator”, which by default has adminstrator level privileges (and is a member of the group called “Administrators”). However, note the difference between administrator when used to refer to the built–in account and to refer to privileges. The same account in Linux has the name “root”, and is referred to as the “root”, “superuser”, or (rarely) “administrator” account.

Moving Windows with Keyboard

Sometimes, it is handy to be able to move windows using the keyboard, especially when the window is rendered invisible. This often happens when there's a problem with the screen resolution resulting in the window's title bar being beyond the visible screen area, or the window is on a second monitor, which is not working for some reason.

To move the window by keyboard, hold down Alt and press Space (which activates the window menu from the top-left corner), then press M. This will put the window in ‘Move’ mode. You can now use the arrow keys to move the window. You can also use the mouse by clicking (be careful not to move the mouse first) and dragging.

Note that the window won't move (the Move menu option is disabled) if the window is maximised. If this is the case, first restore (de-maximise) the window by holding down Alt and pressing Space followed by R.

Home About Me
Copyright © Neil Carter

Content last updated: 2009-10-01