In my domain, we use local profiles rather than roaming profiles. However, from time to time, people log on to other workstations besides their own for various reasons. Until recently, I manually checked each workstation for unnecessary profiles stored locally, but finally I discovered the Delprof utility. I can execute Delprof remotely and ask it to remove from all our computers all profiles that have been unused for the past 90 days. Note that Delprof will even delete Administrator profiles, so you need to be careful when using it.

You can find Delprof in the various Windows resource kits. You can also download it from the Microsoft Download Center. (Go to http:// www.microsoft.com/downloads, and search on delprof.exe.) Delprof's syntax is simple. For example, the command

Delprof.exe /I /Q /C:\\pc1 /D:90

tells Delprof to delete all the profiles that haven't been used in the past 90 days from the computer named PC1. The /I switch tells Delprof to ignore errors. The /Q switch tells the utility to delete profiles without confirmation. The /Q switch is important to include if you plan to automate the deletion process. When you don't include this switch, you must confirm that you want to delete each profile before Delprof will delete it.

To automate the deletion process, you can create a simple text file named computers.txt that contains all the names of the computers in your network. You need to put each name on a separate line. After you've created this file, run the following For command from the command-shell window:

For /f %a in (computers.txt) Do
  Delprof.exe /I /Q /C:\\%a /D:90

Delprof will then delete all the profiles that haven't been used in the past 90 days from the computers specified in the text file.

Alternatively, you can place the For command in a batch file, which you can then schedule to run periodically. Note that you must replace the two occurrences of %a with %%a to use this command inside a batch file. (When you use an iterator variable in a For command that you execute from a command prompt, you use one percent sign. When you use an iterator variable in a For command in a batch file, you must use a double percent sign.)